Mar*_*rty 1 php mysql apache redirect http-status-code-301
我正在将一个500多页的大型静态网站转移到Joomla安装中,但我想要做的,而不是编写500多行.htaccess文件,是使用PHP内置的301头重定向来动态重定向进来的请求到新的URL.
例如,在我移动网站后,以下网址将为404而没有重定向 -
http://www.foo.com/old_page.html
我希望它重定向到
http://www.foo.com/old-page.php
Run Code Online (Sandbox Code Playgroud)
所以我想创建一个旧URL的MySQL数据库及其相应的新URL,然后,如果服务器要返回404,首先要检查数据库是否有现有旧URL,如果匹配,则发出301重定向到新URL.对,我在这里有道理吗?
我该怎么办?我可以"谈论"逻辑,但不确定从哪里开始或如何实现它,因为虽然我理解PHP,但我真的不明白它如何与Apache一起工作(或者即使它会例如......) ?
如果你知道任何已经在做这个的脚本,那就更好了.
在Apache配置中,设置您喜欢的/404handler.php脚本的ErrorDocument.在其运行上下文中,$ _SERVER ['REQUEST_URI']将是所请求的原始页面的URI.进行数据库查找,如果找到要重定向的页面,请使用标题("Location:".$ wherever)重定向到它.
| 归档时间: |
|
| 查看次数: |
2130 次 |
| 最近记录: |