带有 var 的 htaccess 重定向 URL,从无文件扩展名重定向到文件扩展名


htaccess redirect url with var from no file extension to file extension

问题是由于某种原因,Googlebot 在抓取某个页面时收到一堆错误 404,但我认为我这边一切正常......

使用 htaccess,我出于 SEO 目的重写了一个带有 vars 的页面,因此:

RewriteRule   ^feeds/([^/]*)'.xml/?$   /rss/feeds.php?cat=$1 [QSA,NC,L]

所以我得到www.url.com/feeds/category.xml而不是

www.url.com/feeds.php?cat=category

我还让页面上的所有网址都遵循此规则,就像我说的那样,我这边一切正常......出于某种原因,GoogleBot只能看到www.url.com/feeds/category并且确实看到了.xml扩展。

不确定它是否有效,但我希望在 htaccess 中放置一条规则,以将www.url.com/feeds/category重定向到www.url.com/feeds/category.xml,即使发生这种情况,但不确定如何做到这一点。

也许可以尝试一下

RewriteRule   ^feeds/([^/]+)/?$   /feeds/$1.xml [R,NC]

这会使用 HTTP 302 重定向将www.url.com/feeds/category重定向到 www.url.com/feeds/category.xml。 如果您不希望R标志使用HTTP 302重定向,请将其删除,但就Google而言,这将使www.url.com/feeds/category成为有效的URL。 以防万一:mod_rewrite。