酷!學園

技術討論區 => 程式討論版 => PHP程式設計討論區 => 主題作者是: elleryq 於 2014-02-17 16:41

主題: nginx 與 php-fpm 設置問題
作者: elleryq2014-02-17 16:41
想請教一個設定上的問題,我 Google 了不少 nginx 與 php-fpm 的設置教學文章,照著設定來做是沒問題的。

但是如果是這樣的情況:
  /var/www/html  => PHP application 1,對應到 /
  /var/www/wordpress => PHP application 2,對應到 /wordpress

就會出現錯誤。

請問可以這樣設定嗎?如果可以,又該怎麼設定?
主題: Re: nginx 與 php-fpm 設置問題
作者: twu22014-02-17 17:41
直接搬過去會比較簡單.
或者用 virtualhost 處理, 原本的那路徑用個 header 轉過去....

一定要那樣用的話... 用 rewrite 可能做不到吧 (跑出 / 的範圍, 安全性的檢查也許就不充許....)
也許要用 proxy 的方式來處理 (丟給 virtualhost 去....)

PS. 突然想到, 特別寫一個 location 的設定來處理, 應該也做的到 ($document_root 改變就可以), 不過沒試過....
主題: Re: nginx 與 php-fpm 設置問題
作者: elleryq2014-02-19 10:14
我有找到這篇 http://blog.teatime.com.tw/1/post/383 (http://blog.teatime.com.tw/1/post/383)
或許整個搞懂是可行的
但還沒消化完  :-\
主題: Re: nginx 與 php-fpm 設置問題
作者: twu22014-02-19 14:05
想的太複雜了, 最後發現只要用 alias 就可以簡單的做出來...

代碼: [選擇]
location /wordpress/ {
        alias /var/www/wordpress/;
}

location ~ ^/wordpress/(?<SCRIPT_NAME>.+?\.php)(?<PATH_INFO>/.*)?$ {
        alias /var/www/wordpress/;
        try_files $SCRIPT_NAME = 404;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param PATH_INFO $PATH_INFO;
        fastcgi_param PATH_TRANSLATED $document_root$PATH_INFO;
        fastcgi_param SCRIPT_NAME $SCRIPT_NAME;
        fastcgi_param SCRIPT_FILENAME $document_root$SCRIPT_NAME;
        fastcgi_param HTTPS $php_https;
        fastcgi_pass unix:/var/run/php-fpm.sock;
}
主題: Re: nginx 與 php-fpm 設置問題
作者: elleryq2014-02-20 16:43
感謝!!
我回去試試看。