.htaccess 301重定向问题

发布于 2024-10-11 13:37:56 字数 283 浏览 5 评论 0原文

我在为 .htaccess 中的以下问题编写规则时遇到问题。这就是我需要的。

当 URL 是这样时,

www.mysite.com/cat/2011/subcat1/subcat2/product.htm?page=2

它应该 301 重定向到此

www.mysite.com/cat/2011/subcat1/subcat2/product/2.htm

您能告诉我该怎么做吗?

谢谢

I am having trouble writing a rule for following problem in .htaccess. Here is what I need.

WHEN URL IS THIS

www.mysite.com/cat/2011/subcat1/subcat2/product.htm?page=2

IT SHOULD 301 REDIRECT TO THIS

www.mysite.com/cat/2011/subcat1/subcat2/product/2.htm

Can you please tell me how to do this?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

深空失忆 2024-10-18 13:37:56

----- 编辑和测试的答案 ----------

RewriteEngine On
RewriteCond %{QUERY_STRING} page=(\d+)
RewriteRule ^cat/(\d+)/([^/]+)/([^/]+)/product\.htm http://www.mysite.com/cat/$1/$2/$3/product/%1.htm? [R=301,L]
  • RewriteRule 仅匹配 url 部分,而不匹配查询字符串。因此,RewriteCond 用于匹配查询字符串。
  • 请注意,来自 url 的匹配项用作 $N,来自查询字符串的匹配项用作 %N
  • 重写的 url 末尾有一个问号。这可以防止将原始查询字符串添加到新重写的 url 中。

对于任意数量的子猫:

RewriteEngine On
RewriteCond %{QUERY_STRING} page=(\d+)
RewriteRule ^cat/(\d+)/(.+)/product\.htm http://www.mysite.com/cat/$1/$2/product/%1.htm? [R=301,L]

----- EDITED AND TESTED ANSWER ----------

RewriteEngine On
RewriteCond %{QUERY_STRING} page=(\d+)
RewriteRule ^cat/(\d+)/([^/]+)/([^/]+)/product\.htm http://www.mysite.com/cat/$1/$2/$3/product/%1.htm? [R=301,L]
  • RewriteRule matched only the url part, not the query string. So, RewriteCond is used to match query string.
  • Please note, matches from the url are used as $N and match from the query string is used as %N
  • There is a question mark placed in the end of the rewritten url. This prevents the original query string to be added to the new rewritten url.

For any number of subcats:

RewriteEngine On
RewriteCond %{QUERY_STRING} page=(\d+)
RewriteRule ^cat/(\d+)/(.+)/product\.htm http://www.mysite.com/cat/$1/$2/product/%1.htm? [R=301,L]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文