程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> nginx 部署thinkphp 做的東西, 配置 Pathinfo 模式,終於配好了,nginxthinkphp

nginx 部署thinkphp 做的東西, 配置 Pathinfo 模式,終於配好了,nginxthinkphp

編輯:關於PHP編程

nginx 部署thinkphp 做的東西, 配置 Pathinfo 模式,終於配好了,nginxthinkphp


  用thinkphp做了一個網站,部署到ubuntu上的時候需要,服務器用的是nginx,本身不支持pathinfo模式,需要修改配置文件,使其能夠用pathinfo。

  我用的是虛擬主機的方式。之前配置了好久,總是出現各種各樣的問題,最後實在不行,直接用rewrite模式,配置還比較簡單。後來不知道改了什麼,rewrite也不能用了,這回打算把

pathinfo 配出來, 所以查了各種資料,一點一點的改。終於改成了。

  發現很多網上的東西,其實和自己用的經常會有一點差別,需要根據自己的東西進行修改才行

server {
        listen   8082;

        root /usr/share/nginx/www/ssdf;
        index index.php index.html index.htm;

        error_page 404 /404.html;                            //404和後面的“/” 需要有一個空格隔開

        # pass the PHP scripts to FastCGI server listening on the php-fpm socket
        location / {                                         //這裡是rewrite規則,可以單獨使用,thinkphp中模式也要改成rewrite,
         if (!-e $request_filename) {              //之前配置好了,不知道後來改了那不能用了。
           rewrite  ^/(.*)$  /index.php/$1   last;
           break;
            }
        }

        location ~ ^(.+\.php)(.*) {
#               try_files $uri =404;         這句只是嘗試注釋掉了,後來也沒再嘗試不注釋能不能用
#               fastcgi_pass 127.0.0.1:9000;       這裡一開始寫的詞句,後來修改成default文件中的下面那一句,這句不知道這兩句怎麼用
                fastcgi_pass unix:/run/php5-fpm.sock;
                fastcgi_index index.php;
#               include fastcgi_params;            這裡面fastcgi_params和 fcgi.conf內容是相同的,網上兩種命名都有人用
                include fcgi.conf;

                set $real_script_name $fastcgi_script_name;
                set $path_info "";
                if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$"){     //if語句後面一定要有個空格,要和別的區分開,屬於語法規定
                        set $real_script_name $1;
                        set $path_info $2;
                }
                fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
                fastcgi_param SCRIPT_NAME $real_script_name;
                fastcgi_param   PATH_INFO $path_info;
        }


}

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved