【发布时间】:2014-04-22 14:54:37
【问题描述】:
我研究了高低,但还没有找到我想要的。
我有以下重写规则:
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^shop$
RewriteRule ^shop/(.+)$ http://www.domain.com/$1 [NC,L,R=301]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
我想要发生的事情如下:
- 检查传入 URL 中的值“shop”
- 如果找到值“shop”,则运行重写器
现在,它没有运行,因为条件没有得到满足。 当我把 RewriteCond 拿走时,它会正确地从 URL 中删除“商店”,然后进入无限循环。
我尝试过使用 REQUEST_URI 和 QUERY_STRING 变量,但似乎都不起作用。
我目前在商店中使用 WooCommerce
完整的产品网址:
http://www.domain.com/shop/category/product/
任何帮助表示赞赏。
【问题讨论】:
-
什么是完整的商店 URL,您希望它重定向到哪里?
-
你想让
/shop/category/product/重定向到/category/product/吗? -
当您收到 404 时,浏览器中会显示什么 URL?
-
对不起,我删除了我的回复。将在下面的块中回复。