我有这个网址
category/product/index.php?itemid=WdS7Dk3L&title=new-product
我想重写它,第二个参数是可选的
category/product/WdS7Dk3L/new-product
或
category/product/WdS7Dk3L/
我的htaccess被放入了
category/product/.htaccess
我从this post得到了这个,但我无法让它发挥作用。
RewriteRule ^category/product/([^/]*)/?(.*)$ index.php?itemid=$1&title=$2
请帮我指出正确的方向。 感谢。
答案 0 :(得分:1)
.htaccess
文件重写匹配是相对于.htaccess
文件的位置,所以请使用:
RewriteRule ^([^/]+)(?:/(.*))?$ index.php?itemid=$1&title=$2
您只将第二个参数指定为可选,所以我将第一个*(零或更多)更改为+(一个或多个,就像在那里一样)并删除了?斜线上的(可选),因为它出现在你的两个例子中。
<强>更新强>
当没有提供第二个参数时,匹配被更新为在第一个参数可选后斜杠。