我无法找到问题的直接答案,需要向真正的专家了解。
我有一个由Joomla生成网址的网站。我相信在搜索引擎中有大量的网址,我真的不知道它们中的哪一个。 302重定向是一个选项,但我不能说哪些网址需要重定向。
我唯一知道所有网址都是由sef404脚本生成的,它是Joomla的SEO脚本。
我的问题是,如何确保使用.htaccess文件正确发送Google和其他搜索引擎上的所有孤儿网址?
如何301将所有404页面重定向到主页(根文档)
目前我使用的是自定义的404.html错误文件,但文件太多而且会给自定义404错误页面提供过山车
答案 0 :(得分:44)
我想出了解决方案并将其发布在我的博客上
这里也是htaccess代码
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . / [L,R=301]
但我也在我的博客上发布了其他解决方案,这取决于你真正需要什么
答案 1 :(得分:38)
您需要了解有关URL的信息,例如它们是否具有特定目录或某些查询字符串元素,因为您必须匹配某些内容。否则你将不得不重定向404.如果这是必需的,那么在.htaccess中执行类似的操作:
ErrorDocument 404 /index.php
错误页面重定向必须相对于root,因此您无法使用www.mydomain.com。
如果你有一个匹配的模式,那么使用301而不是302,因为301是永久性的,302是临时的。 301将从搜索引擎中删除旧URL,而302则不会。
Mod Rewrite Reference:http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html