我有一条规则可以使用此网址并正确处理。
RewriteRule ^category/([a-zA-Z0-9-z\-]+)/([a-zA-Z0-9-z\-]+)$ category.php?page=category&subPage=$1&pitem=$2
mysite.com/category/phones/htc-desire
问题是如果网址最终是
mysite.com/category/phones/
规则只会查找不存在的页面。
我需要做的是在规则中使用“任何非空的页面”。
有什么建议吗?
答案 0 :(得分:0)
这应该有效:
RewriteRule ^category/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]*)$ category.php?page=category&subPage=$1&pitem=$2
正则表达式组末尾的“+”量词表示“1或更多”,而“*”表示完全是可选的。
答案 1 :(得分:0)
如何计算,只显示所有类别项目:
# No phone selected
RewriteRule ^category/([a-zA-Z0-9-z-]+)/?$ category.php?page=category&subPage=$1&pitem=all
# Phone selected
RewriteRule ^category/([a-zA-Z0-9-z-]+)/([a-zA-Z0-9-z-]+)/?$ category.php?page=category&subPage=$1&pitem=$2