【发布时间】:2017-03-21 13:44:10
【问题描述】:
我查看了很多关于 .htaccess 不起作用的问题。 都试过了,我的还是不行。
以前它仍然对我有用,当我删除应用程序文件夹中的 .htaccess 文件时问题就开始了。
我所遵循的教程没有特别提到删除该 htaccess,而只是将其复制到根目录。所以基本上,当它还在工作时,我有 2 个 htaccess 文件,分别位于应用程序文件夹和应用程序文件夹内。
现在,即使我删除了应用程序中的 .htaccess 文件,在我的项目根目录中只留下了 1 个 .htaccess,它仍然无法工作。
我仍然必须包含 'index.php' 才能使 url 正常工作。
当我不包含 index.php 时,它不一定会显示 404。
它只是显示这个页面,
这是我的 .htaccess 文件的内容。
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
我的配置文件。
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';
除此之外,我已经尝试过,刷新我的 wamp 连接,关闭我的电脑然后再次打开它。
我不知道出了什么问题,因为它第一次对我有用,即使我有 2 个 htaccess,它仍然不会。当我不小心删除了那个 1 个文件时发生了一些事情。
我的系统是 Windows 7 32 位,我正在使用 WAMP。我已经在我的 wamp 上打开了 apache 的重写模块。我正在使用最新的 codeigniter,3.1.2
这也可以给个提示,
当我加载视图时,css url 不起作用。
css url 应该是localhost/project/css/bootstrap.min.css
但是,相同的结果,相同的页面显示在上面。
我的 apache 上的 httpd.conf 也有这个。
<Directory />
AllowOverride none
Require all denied
</Directory>
【问题讨论】:
-
查看
RewriteBase,因为这是一个相对路径/目录。除非它直接在localhost上作为根。 -
我昨天刚用新的 codeigniter 版本安装了我的 wamp,所以我不知道 rewritebase 是什么,这是我第一次看到它。这是我的项目的目录。 C:\wamp\www\project\
-
尝试将以下内容放在您的
RewriteEngine定义下:RewriteBase /project/。 -
您发布的规则工作正常,并将所有内容重写为 index.php 例如:/foobar 到 /index.php/foobar 我认为问题是其他地方。
-
我在技术方面没有经验,如果我刚卸载 wamp 然后重新安装,你会推荐吗?
标签: php apache .htaccess mod-rewrite