【发布时间】:2012-05-31 08:56:55
【问题描述】:
各位,我遇到了 htaccess 的问题。 我正在使用 codeigniter 作为框架。 我目前使用的代码是:
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} ([a-zA-Z0-9_-]+)\.example\.(.*+) [NC]
RewriteCond %{REQUEST_URI} /index([0-9]+) [NC]
RewriteRule .* /index.php/main_controller/method/%1 [QSA,L]
现在我想做的是将 %1 作为一个值发送到我的 'main_controller' 控制器的名为 'method' 的方法。问题:不是发送进来的值([a-zA-Z0-9_-]+),而是发送进来的值([0-9]+),如果我发送%2应该是这种情况....我想发送进来的值([a-zA-Z0-9_-]+), 比如说,如果 url 是
somevalue.example.com/index33
它发送的是33而不是somevalue
【问题讨论】:
-
你的最后一个 RewriteCond 覆盖了前一个,这意味着 $1/%1 是 /index(here) 之后的值
标签: php apache .htaccess codeigniter mod-rewrite