Google为我的某个网站选择了一个错误的网址:
mysite.com/9807280/2005-Subaru-Outback //
正确的网址应为:
mysite.com/9807280/2005/Subaru/Outback/City/Name /
错误链接导致我的RewriteRule中断并且页面不显示,这里是重写:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9]+)/?$ /index.php?p=module&prefix=ebosync&module_page=details&id=$1 [NC,QSA,L]
RewriteRule ^([0-9]+)/([0-9]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)/?$ /index.php?p=module&prefix=ebosync&module_page=details&id=$1&year=$2&make=$3&model=$4&city=$5&dealer=$6 [NC,QSA,L]
解决此问题的最佳方法是什么?将两个RewriteRules组合成一个考虑缺失参数的方法?
答案 0 :(得分:1)
您应该写一条规则告诉Google更正链接。
RewriteRule /broken/ /fixed/ [R=301,l]
R = 301会发送HTTP状态301,一旦googlebot再次访问错误的网址,Google就会更新其索引。