所以这是我的问题..
这是我的网址: /category.php?cat=8
这是我试图实现的网址: /方的事件/厨房/
在数据库中,该类别的ID为主要, sub , main_slug 和 sub_slug
这:/ main_slug / sub_slug /
我有这个
RewriteRule ^([a-z]+)\/?$ $1.php [NC]
RewriteRule ^([a-z]+)\/([0-9]+)\/?$ category.php?param=$1¶m2=$2 [NC]
哪些输出和工作正常:/ category / 8 /
但它只适用于数字,没有别的。如果我使用和写信,我会找到一个未找到的页面。
但是我对htaccess正则表达式只是使用主要和次要slug而不仅仅是数字而感到迷茫。
任何帮助都将不胜感激。
答案 0 :(得分:1)
在这条规则中:
RewriteRule ^([a-z]+)\/([0-9]+)\/?$ category.php?param=$1¶m2=$2 [NC]
([a-z]+)
位表示" a和z之间的一个或多个字母"
([0-9]+)
位表示" 0到9之间的一个或多个数字"
通过将[0-9]
替换为另一个[a-z]
,您所要求的内容似乎已经完成。但是,如果您想接受任何字符,而不仅仅是z和/或0-9,请用([^/]+)
替换它们,这意味着"一个或多个不是 - 斜线字符"。