参考官网的指南:
/*
默认情况下,index.php 文件将被包含在你的 URL 中:
example.com/index.php/news/article/my_article
你可以很容易的通过 .htaccess 文件来设置一些简单的规则删除它。下面是一个例子,使用“negative”方法将非指定内容进行重定向:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f //此处有大坑。加上这句可保证一般css、js文件正常加载。(注意删掉这句注释哦)
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
注意:如果你的项目不在根目录请把上面这一句改为:RewriteRule ^(.*)$ index.php/$1 [L]
*/
我的URL是:
http://10.19.1.1/index.php/news //可正常访问
查看/etc/httpd/conf/http.conf文件,查看rewrite模块是否开启,并将AllowOverride None 更改为AllowOverride All。
重启apache服务器
在CI的根目录下,创建.htaccess文件:内容如下 //官网上直接复制下来的
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
在IE中打开:
http://10.19.1.1/news
出现404错误。
尝试:
http://10.19.1.1//news
成功访问页面。
为了去掉后面的一个“/”,修改.htaccess配置文件中的最后一行:
RewriteRule ^(.*)$ /index.php/$1 [L] ----》RewriteRule ^(.*)$ index.php/$1 [L]
在IE中打开:
http://10.19.1.1/news
成功访问。
|