删除 url 中无用的部分
Remove useless part of url
我的网站启用了用户友好的 URL 以删除 /index.php?q=
,但是在 Google 中我发现许多 URL 没有意义,例如:
/category/Trees/index.php?q=/item/view/11527
唯一相关的部分是
如何使用 htaccess 将它们永久重定向到 /item/view/11527
URL?
目前我有这个:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?q=&%{QUERY_STRING} [L]
您可以为此使用重定向规则:
# external redirect rule
RewriteCond %{THE_REQUEST} /index\.php\?q=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L,NE]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q= [L,QSA]
确保在 .htaccess 的顶部设置了适当的 RewriteBase
。
我的网站启用了用户友好的 URL 以删除 /index.php?q=
,但是在 Google 中我发现许多 URL 没有意义,例如:
/category/Trees/index.php?q=/item/view/11527
唯一相关的部分是
如何使用 htaccess 将它们永久重定向到 /item/view/11527
URL?
目前我有这个:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?q=&%{QUERY_STRING} [L]
您可以为此使用重定向规则:
# external redirect rule
RewriteCond %{THE_REQUEST} /index\.php\?q=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L,NE]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q= [L,QSA]
确保在 .htaccess 的顶部设置了适当的 RewriteBase
。