我正在尝试使用mod_rewrite模块来创建流畅的URL。例如,我的example.com/pages/group/index.php?id=1&slug=example-keyword
将成为example.com/group/1-example-keyword
。
我遇到的问题是第二个参数以及如何拆分。由于第二个参数使用短划线,我怎么能解决这个问题,因为它会抛出404错误。
.htaccess rule
RewriteRule ^group/([^-]*)-([^-]*)$ /pages/group/index.php?id=$1&slug=$2 [L]
答案 0 :(得分:0)
您的正则表达式明确禁止第一组和第二组中的破折号。
在第二组中使用.
(任意字符)代替[^-]
(除-
以外的任何字符)尝试此操作:
RewriteRule ^group/([^-]*)-(.*)$ /pages/group/index.php?id=$1&slug=$2 [L]
在此表达式中,{1}}之后但第一个group/
之前的所有内容都将在第1组中捕获,第一个-
之后的所有内容都将在第2组中捕获。