我很好奇为什么它无法工作并寻找解决方案。
以下是我的htaccess
RewriteRule ^field/category/([a-zA-Z0-9\-]+)&([a-zA-Z0-9\-]+)$ field.php?cat[]=$1&cat[]=$2
效果很好,网址为domain.com/field/category/Ball&Drinks
如何更改& - 并使其成为domain.com/field/category/Ball-Drinks
我试试
RewriteRule ^field/category/([a-zA-Z0-9\-]+)-([a-zA-Z0-9\-]+)$ field.php?cat[]=$1&cat[]=$2
它不起作用。 - 字符不是字面意思。有人可以帮忙吗?感谢。
答案 0 :(得分:0)
你必须逃避 - 字符:
RewriteRule ^field/category/([a-zA-Z0-9\-]+)\-([a-zA-Z0-9\-]+)$ field.php?cat[]=$1&cat[]=$2
答案 1 :(得分:0)
我知道这是一个老问题,但我花了一个小时搞清楚这一点,所以我想我应该分享答案:
用[\-]
替换连字符以使RewriteRule将其视为字符串文字。
所以最终的代码是:^field/category/([a-zA-Z0-9\-]+)[\-]([a-zA-Z0-9\-]+)$ field.php?cat[]=$1&cat[]=$2