以下是我正在使用的页面:
www.domain.com/clothing/mens/brand.html?brand=DOPE
我想将其更改为:
www.domain.com/clothing/mens/DOPE
我目前正在使用:
RewriteEngine On
RewriteRule ^mens/brand/([0-9a-zA-Z]+) mens/brand.php?brand=$1 [NC,L]
但会产生不良影响:
www.domain.com/clothing/mens/brand/DOPE
当我删除"品牌":
RewriteRule ^mens/([0-9a-zA-Z]+) mens/brand.php?brand=$1 [NC,L]
我没有收到错误但只有空白页。 我做错了什么? 我已经尝试了一切,似乎没有任何工作:(
答案 0 :(得分:1)
试试这个:
CALayer
您使用的网页是brand.html或brand.php?
答案 1 :(得分:0)
让我们做一点回顾。您想要进行此重定向:
clothing/mens/DOPE -> clothing/mens/brand.html?brand=DOPE
但您使用的规则(问题中提到的第一个规则)会执行此操作:
mens/brand/DOPE -> clothing/mens/brand.html?brand=DOPE
我认为你应该使用这个规则:
RewriteEngine On
RewriteRule ^clothing/mens/([\da-z]+) mens/brand.php?brand=$1 [NC,L]
请注意,您只需使用[\da-z]
(或[0-9a-z]
)代替[0-9a-zA-z]
,因为您正在使用无案例[NC]
标记。
答案 2 :(得分:0)
我感谢所有尝试提供帮助的人,但这里有其他人寻找答案的方法。
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^mens/([^/]+)$ mens/brand.php?brand=$1 [L]