首页 > 代码库 > php CI 实战教程:如何去掉index.php目录

php CI 实战教程:如何去掉index.php目录

Windows下自由创建.htaccess文件的N种方法

.htaccess是apache的访问控制文件,apache中httpd.conf的选项配合此文件,完美实现了目录、站点的访问控制,当然最多的还是rewrite功能,即URL重写,PHP中实现伪静态的一个重要途径,也是被公认为SEO中搜索引擎友好的极为有效的一个手段。
尽管前些天的黑屏风波闹的沸沸扬扬,但依本人拙见,windows用户并无任何减少。现在的一个实际问题就是windows不允许重命名时.的前面没有字符,它认为这样的文件名是不合法的。这就造成我们无法通过重命名”新建文本文档.txt”为”.htaccess”来创建此访问控制文件,但是,事情总有解决的办法。

直接通过文本编辑工具保存,例如记事本,ultraEdit等等,不过保存的时候选择所有文件就可以了,这实在是一个欠揍的方法,不过肯定不是我欠揍,欠揍的是微软,华丽截图来一张

apache去掉index.php

1.编辑conf/httpd.conf配置文件

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

同时对应Directory下要配置 AllowOverride All

2.在 CI 根目录下(即在index.php,system的同级目录下)新建立一个配置文件,命名为: .htaccess 内容如下:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

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

RewriteRule ^(.*)$ index.php/$1

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(application|modules|plugins|system|themes) index.php/$1 [L]

3.把system/application/config/config.php 中$config[‘index_page‘] = "index.php";改为$config[‘index_page‘] = ""; 

4.重启apache



来自为知笔记(Wiz)