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]
 
要注意 /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了。

原文地址:https://www.cnblogs.com/jiji262/p/2697018.html