1. 程式人生 > >對新手嚴重不友好的強者——Nginx那些俯拾皆是的坑

對新手嚴重不友好的強者——Nginx那些俯拾皆是的坑

1、if和後邊的括號要隔一個空格,變數後面也要有空格。

2、location / 和location = / 的意味不一樣。前面的是通用匹配,後面的匹配根節點訪問請求,前面的使用不好很容易引發重定向過多錯誤或內部伺服器錯誤。

3、root最好寫在server下方,每個location中也可以配置。

4、作為靜態資源伺服器,http節點中的default_type 改為 text/html;才能滿足火狐瀏覽器核心相容需求。

5、if不支援else和多重判斷,if底下不能使用index,可改為rewrite ^.*$ /index break;

6、關於location的匹配參考http://www.cnblogs.com/jiangyang/p/8485046.html,順帶複習正則表示式,小括號、中括號注意區分。

7、/usr/sbin/nginx -s reload可以快速載入配置,/usr/local/nginx/sbin/nginx -t驗證配置是否有錯誤,/usr/local/nginx/sbin/nginx -s stop停止,/usr/local/nginx/sbin/nginx啟動。

8、初識Nginx啥都不會,可以通過return來除錯驗證自己的配置邏輯,或者採用第三方module echo(nginx不要yum/rpm安裝):

https://github.com/openresty/echo-nginx-module

下載、解壓echo,到nginx安裝資料夾./configure --add-module=echo解壓後文件夾,make&&make install。之後一定要stop nginx再start才能生效,不能reload!