使用 htaccess 删除子目录中的 codeigniter index.php
我正在尝试从 CI url 中删除 index.php,但按照说明进行操作后,它似乎不起作用。
我有一个 codeigniter 安装在子目录中运行。路由配置中有一个名为 main 的默认控制器,另一个名为“create”的控制器。默认运行良好,但转到 /create 会返回 324 错误,指出未收到数据。我的 htaccess 看起来像这样:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>
I'm trying to remove the index.php from my CI urls, but having followed the instructions it doesn't seem to be working.
I have a codeigniter installation running in a subdirectory. There is a default controller set in the routes config called main, and another controller called 'create'. The default runs fine, but going to /create returns a 324 error saying No Data Received. My htaccess looks like this:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
这应该足够了:
This should be enough:
这就是我用的。我的 CodeIgniter 也在子目录中运行。
This is what I use. My CodeIgniter also runs in a subdir.
.htaccess 添加:
进入 application/config/config.php 并清除索引页配置值:
解决了我的问题希望其他人也...:)
.htaccess add:
Go into application/config/config.php and clear the index page config value:
Solved My problem hope others too... :)
有时你需要启用它的重写模块,运行“apache2启用模块重写”:
你需要重新启动网络服务器以应用更改:
然后按照索菲亚的回答。
Sometimes you need to enable it the rewrite module, run "apache2 enable module rewrite":
You need to restart the webserver to apply the changes:
Then folow Sofia's answer.
对于 ubuntu
for ubuntu