CodeIgniter 去掉 URL 中的 index.php
1,确保apache支持 mod_rewrite
1)打开Apache2.2\conf\httpd.conf
搜索 LoadModule rewrite_module modules/mod_rewrite.so (Apache2是这个)
去掉前面的#
2)搜索AllowOverride None 替换为 AllowOverride All(注意,有好几个)
2,在 CI 根目录下新建立一个配置文件,命名为: .htaccess,文件内容如下:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
要注意 /index.php/$1 要根据你目录(Web 目录,比如 http://www.34ways.com/index.php)的实际情况来定,比如网站根目录是 /34ways/index.php 则要写成 /34ways/index.php/$1
注意: RewriteCond $1 !^(index\.php|images|robots\.txt) 这里是需要忽略的路径和文件,比如可以这样来写:
RewriteCond $1 !^(index\.php|images|robots\.txt|theme)
3,修改 config.php 这个文件中的下列内容
$config['index_page'] = “index.php”;
把其中的 “index.php” 改成 “” 就可以了。
OK,这样就可以去掉index.php了。