删除 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