龙岩易富通网络科技有限公司

龙岩小程序开发,龙岩分销系统

在nginx和apache下如何去除url中的index.php

2015.10.01 | 1488阅读 | 0条评论 | 服务器配置

apache环境下:

通过 .htaccess 文件来设置一些简单的规则删除它。

<IfModule mod_rewrite.c> 

 Options +FollowSymlinks -Multiviews 

 RewriteEngine on 

 RewriteCond %{REQUEST_FILENAME} !-d 

 RewriteCond %{REQUEST_FILENAME} !-f 

 RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] 

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

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

</IfModule>

如果你的项目不在根目录请把上面这一句改为: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;     

  } 

}


location /目录/ {

    if (!-e $request_filename){

   rewrite ^/目录/(.*)$ /目录/index.php/$1 last;

    }

}

赞 (

发表评论