我最近升级的站点,几乎所有的URL已经改变。我已经重定向了所有的人(或者我希望如此),但有可能他们中的一些人已经溜走了。有没有办法以某种方式捕捉所有无效的URL并将用户发送到某个页面,并以某种方式知道该人来自哪个URL,这样我就可以记录并修复这些?我想我可以使用.htaccess,但不知道如何。我正在使用PHP非常感谢!捕获所有无效的网址
3
A
回答
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
在网站根目录的.htaccess
ErrorDocument 404 /yourFile.php
0
最简单的将是添加自定义404重定向htaccess的。
只需添加这样的事情:
ErrorDocument 404 /errors/404.php
到的.htaccess(如果需要创建一个)在您的应用程序根。并且所有请求都不会存在的页面将被重新传送到您自己的自定义404页面。
相关问题
- 1. 如何从网站获取所有有效的网址?
- 2. 捕获Sinatra中的所有网址,除了/ admin/
- 3. 捕获其间网址的所有实例/ /但如果文件
- 4. Magento路由器:如何捕获所有网址中的参数?
- 5. HTTPS网址无效
- 6. 捕获所有无效的内存使用情况?
- 7. 如何使用JAX-RS捕获所有无效的URL?
- 8. Facebook说有效的网址不是有效的网址
- 9. url_for url_for无效的网址
- 10. 无法解析它们的网址会识别“无效”网址
- 11. Apache 404网址无效
- 12. Pinterest按钮 - 无效网址
- 13. Ext.Ajax.request:外部网址无效?
- 14. 如何捕获所有无线网络流量wireshark?
- 15. defmethod捕获所有
- 16. 捕获网址的一部分
- 17. 如何通过网址抓取(python)捕获所有可能的错误?
- 18. Zend_Uri_Http:无效的URI提供 - 尽管网址有效
- 19. 重写所有的网址
- 20. 检测有效网址
- 21. 所有JavaScript“未捕获的SyntaxError:无效的正则表达式”消息列表
- 22. nginx的WS无效的网址前缀
- 23. jQuery的AJAX的网址无效
- 24. 获取通过CodeIgniter编码的网站的所有网址
- 25. 错误:无效的有效地址
- 26. 无效的有效地址计算
- 27. 如何检测无效的网址与网址抓取
- 28. AngularJS输入网址无效/有效/错误
- 29. Django(夹层)网址捕捉所有内容
- 30. 提供的网址无效Facebook RestFB
很大,这就是我一直在寻找。我想我可以用.htaccess这种方式捕捉404以外的其他错误吗?谢谢。 – Kentor 2011-01-19 15:23:09