1

这是我的 htaccess 文件,它有点工作。无论我指定什么控制器,它总是会进入主页

<IfModule mod_rewrite.c>
RewriteEngine On

#Checks to see if the user is attempting to access a valid file,
#such as an image or css document, if this isn't true it sends the
#request to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#This last condition enables access to the images and css folders, and the robots.txt file
RewriteCond $1 !^(index\.php|css|js)
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

这是我的网站网址

http://automationmetrics.local/automation/

想法?

4

2 回答 2

3

当这种情况发生在我身上时,我通常会检查一些事情:

  • 我是否在 Apache 中启用了 mod_rewrite 模块?
  • 我是否将 $config['index_page'] 设置为空白?

如果上述方法有效,这是我使用的方法,这对我有用:

https://gist.github.com/petrepatrasc/6925413

如果您仍然不走运,请尝试摆弄 $config['uri_protocol'] 参数 - 我记得我只能使用 REQUEST_URI 作为值使其在 Windows(当时使用 IIS)上工作。可能与此有关。

于 2013-10-10T20:50:45.603 回答
1

就像评论中所说的那样,前两个规则会在所有文件上触发。所以这个:

RewriteCond $1 !^(index\.php|css|js)

似乎多余,删除它应该可以解决您遇到的问题。

于 2013-10-10T20:52:11.143 回答