友好网址中的非必需参数

时间:2018-03-24 09:11:06

标签: .htaccess mod-rewrite friendly-url

我想为someone.php目录写一个漂亮的网址。 prolem有时会期望两个参数,有时只需一个。我无法处理第二个参数。

我可以轻松编写一个参数

RewriteRule ^someone/([^.?/]+)$  /someone.php?someone=$1 [L]

但是当我尝试添加第二个参数时,我无法成功。我试过这样的事情

RewriteRule ^someone/([^.?/]+)/([^.?/]*)$  /someone.php?someone=$1&topic=$2 [L]

1 个答案:

答案 0 :(得分:0)

您可以在Regex模式中选择第二个第二个捕获组,以便规则可以处理两个新网址。

^someone/([^.?/]+)/?([^.?/]*)?$

上面的模式会匹配uris /someone/foo/bar/someone/foo

这是您完整的规则

RewriteRule ^someone/([^.?/]+)/?([^.?/]*)?$  /someone.php?someone=$1&topic=$2 [L]