nginx+thinkphp5配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx+thinkphp5配置相关的知识,希望对你有一定的参考价值。

thinkphp5在nginx环境下运行的时候默认是不支持通过index.php/index/index/index的形式去访问的,也不支持route,所以需要手动配置nginx使其支持。
apache默认支持

修改nginx的配置文件

  1. 找到你的thinkphp站点配置项,在其中的php项中如同下面配置

    • windows
      location ~ \.php(.*)$  
          fastcgi_pass   127.0.0.1:9000;
          fastcgi_index  index.php;
          fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
          fastcgi_param  PATH_INFO  $fastcgi_path_info;
          fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
          include        fastcgi_params;
      
    • linux
      location ~ \.php(.*)$  
          fastcgi_pass   unix:/run/php/php7.0-fpm.sock;
          fastcgi_index  index.php;
          fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
          fastcgi_param  PATH_INFO  $fastcgi_path_info;
          fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
          include        snippets/fastcgi-php.conf;
      
  2. 使nginx支持thinkphp5路由
    location / 
            index  index.php index.html index.htm;
            #如果请求既不是一个文件,也不是一个目录,则执行一下重写规则
            if ( !-e $request_filename) 
                rewrite ^(.*)$ /index.php/$1 last;
                break;
            
        

以上是关于nginx+thinkphp5配置的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7 Nginx ThinkPHP5.1 配置

ThinkPHP5 Nginx通用配置

centos6.8 环境一键安装包 nginx配置thinkphp5

thinkphp5 nginx配置 安全pathinfo版本

thinkphp5 nginx配置 安全pathinfo版本

nginx thinkphp5 多入口配置