我是新的URL重写规则,并希望重写一些URL。以下是我的问题:
我已经创建了两个规则(这很好),可以将*.php扩展隐藏在URL中。一种是将"/abc.php“重定向到"/abc”。另一条规则是将/abc重写为/abc.php。这两条规则工作得很好,我使用了以下模式。
^([^/]+)/?\.php$ ->重定向到-> {R:1}^([^/]+)/?$ ->重写到-> {R:1}.php现在我有麻烦了。我有一个类似于www.example.com/member?getuser=chris的页面(注意,由于以前的规则,它不是member.php?getuser=chrisyeung )。我想将URL重写到:
www.example.com/member/chris我尝试遵循一些教程并使用以下模式:
`^/member/(_[0-0a-z-]+)` --> Rewrites to --> `^member?getuser={R:1}`. ...but,它不起作用。
我遗漏了什么?


发布于 2012-01-30 08:47:29
我不违背你的前两条规则。将*.php重写为*,将*重写为*.php --听起来对我来说是个循环。我假设您的文件名为.php,您希望您的访问者使用URL(这个文件扩展名)。然后将*重写为*.php即可。
对于您的成员页面,请使用:
^/member/([0-9a-zA-Z-_]+) member.php?getuser={R:1} [QSA]我更改[]中的有效字符列表,并直接调用member.php --不需要发出另一条规则。QSA用于传递进一步的URL params。
https://stackoverflow.com/questions/9061199
复制相似问题