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;
            }
        }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章