首页 > PHP编程 > 在nginx下如何去除ci框架url中的index.php

在nginx下如何去除ci框架url中的index.php

2015年9月27日

在nginx下如何去除ci框架url中的index.php
http://www.codeweblog.com/%e5%9c%a8nginx%e4%b8%8b%e5%a6%82%e4%bd%95%e5%8e%bb%e9%99%a4ci%e6%a1%86%e6%9e%b6url%e4%b8%ad%e7%9a%84index-php/
ci框架默认的url规则中带有应用的入口文件,例如:
example.com/index.php/news/article/my_article
在以上URL中带有入口文件index.PHP,这样的URL规则对搜索引擎来说是不友好的,那么如何去除这个index.php呢?
apache环境下:
通过 .htaccess 文件来设置一些简单的规则删除它。下面是一个例子,使用“negative”方法将非指定内容进行重定向:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
在上面的例子中,可以实现任何非 index.php、images 和 robots.txt 的 HTTP 请求都被指向 index.php。
Nginx环境下:
修改nginx配置文件,在SERVER段中添加如下代码:
location /{
if (-f $request_filename) {
expires max;
break;
}
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php/$1 last;
}
}

分类: PHP编程 标签:
本文的评论功能被关闭了.