CodeIgniter - 如何从URL隐藏index.php

时间:2010-05-05 03:40:14

标签: php .htaccess codeigniter url mod-rewrite

这就是我.htaccess的样子。 .htaccess位于/www/scripts目录中,该目录是codeigniter的system目录的父目录,其中还包含index.php。我在Apache 2.2.x中启用了mod_rewrite。这是在Ubuntu 9.10服务器上。

我遵循了这个link,但它不起作用。我在apache2中有什么需要做的,任何特定的配置都可以吗?

RewriteEngine on 
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 [QSA,L]

5 个答案:

答案 0 :(得分:8)

使用它:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /folder/index.php/$1 [L]

答案 1 :(得分:3)

只需将以下代码投入您的.htaccess文件

即可
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

来源:http://codeigniter.com/user_guide/general/urls.html

答案 2 :(得分:2)

答案 3 :(得分:0)

这里的解决方案只是简单地放入root。

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L] 

答案 4 :(得分:-2)