0

我的 mod_rewrite 规则有一些问题。我想处理三种不同的 url 模式。

  1. http://example.com/%module%/%view%-%args%.html
  2. http://example.com/%module%/%view%.html
  3. http://example.com/%module%

以下 mod_rewrite 规则并不真正起作用。另外我的问题是查询(例如:user.html?foo=bar)没有效果。

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^([0-9A-Za-z_-]*)/?([0-9A-Za-z_]+)-?([0-9A-Za-z_,]*)\.html$ index.php?__module=$1&__view=$2&__argv=$3

    RewriteRule ^([0-9A-Za-z_-]*)/?$ index.php?__module=$1&__view=&__argv=
</IfModule>
4

1 回答 1

3

对于查询字符串,使用 QSA(追加查询字符串)标记您的规则。

您尝试配置的称为“前端控制器”,其中已经有很多现成的。也许你应该看看一些流行的 PHP 框架并采用一个适合你的。

于 2008-10-09T19:43:04.053 回答