当前位置: 代码迷 >> PHP >> CI除去URL中的INDEX.PHP
  详细解决方案

CI除去URL中的INDEX.PHP

热度:296   发布时间:2016-04-28 18:51:30.0
CI去掉URL中的INDEX.PHP

CI默认的rewrite url中是类似这样的,http://localhost:9090/ci/index.php/news;

这样写出的URL不太好看,并且也不友好,如何去掉这个INDEX.PHP呢?

1、首先先确定服务器用的是AP还是IIS,这里介绍AP的处理方法;

检查AP是否支持mod_rewrite,如果不支持,请打开HTTPD.CONF配置文件

找到下面这句话

LoadModule rewrite_module modules/mod_rewrite.so ,把该行前的#去掉;

搜索 ALLOWOVERRIDE NONE修改为ALL

2、在CI主目录的同级下,新建一个文本文档输入以下内容然后另存为.htaccess

?

RewriteEngine on ??

RewriteCond $1 !^(index\.php|images|robots\.txt) ??

RewriteRule ^(.*)$ /ci/index.php/$1 [L]

?

以上代码的意思是排除某些目录或文件,使用这些上当不会rewrite到index.php上,一般用在静态资源上;

也就是说非PHP代码都要做排除;

注意:/ci/index.php/$1 此处要根据你目录实际情况而定比如你的运行目录为PL那么主把CI改成PL

?

3、修改CI的配置文件 CONFIG.PHP

找到$config['index_page']="index.php"改为$config["index_page"]="";

完成后重启AP 看下效果

  相关解决方案