让nginx支持thinkphp rewrite模式

坚强是说给别人听的谎言 提交于 2019-11-30 15:55:42

Nginx环境
在Nginx低版本中,是不支持PATHINFO的,但是可以通过在Nginx.conf中配置转发规则实现:在nginx配置文件中添加

  1. location / { 

  2.    if (!-e $request_filename) {

  3.    rewrite ^(.*)$ /index.php?s=$1 last;

  4.    break;

  5.     }

  6.  }

其实内部是转发到了ThinkPHP提供的兼容模式的URL,利用这种方式,可以解决其他不支持PATHINFO的WEB服务器环境。

如果你的ThinkPHP安装在二级目录,Nginx的伪静态方法设置如下,其中youdomain是所在的目录名称。

  1. location /youdomain/ {

  2.         if (!-e $request_filename){

  3.             rewrite ^/youdomain/(.*)$ /youdomain/index.php?s=$1 last;

  4.         }

  5. }

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!