我最近升级了一个网站,几乎所有网址都已更改。我已经重定向了所有这些(或者我希望如此)但是有些可能会被我甩掉。有没有办法以某种方式捕获所有无效的URL并将用户发送到某个页面,并以某种方式知道该人来自哪个URL,以便我可以记录这个,并修复它们?我想我可以用某种方式使用.htaccess但不确定如何。我正在使用PHP非常感谢!
答案 0 :(得分:7)
您可以使用PHP编写的自定义ErrorDocument
处理程序来捕获“滑倒”的网址:
# .htaccess file
ErrorDocument 404 /not-found.php
在not-found.php
:
switch($_SERVER['REDIRECT_URL']) {
case '/really_old_page.php':
header('HTTP/1.1 301 Moved Permanently');
header('Location: /new-url/...');
/* As suggested in the comment, exit here.
Additional output might not be handled well and
provokes undefined behavior. */
exit;
default:
header('HTTP/1.1 404 Not Found');
die('404 - Not Found');
}
答案 1 :(得分:2)
在网络根目录中的.htaccess
ErrorDocument 404 /yourFile.php
答案 2 :(得分:0)
最简单的方法是在htaccess中添加自定义404重定向。
只需添加以下内容:
ErrorDocument 404 /errors/404.php
到应用程序根目录中的.htaccess(如果需要,创建一个)。并且所有对任何延伸页面的请求都将被重定向到您自己的自定义404页面。