使用nginx設置root時要注意一個問題,就是如果該root設置的前端目錄不是根目錄,那麼在寫root的絕對位址時,要把前端目錄的部分省略掉。
我們用設置虛擬目錄指向的alias來和root比較一下就非常明顯了
alias
location /abc/ { alias /home/html/abc/; }
在這段配置下,http://test/abc/a.html就指定的是 /home/html/abc/a.html。這段配置亦可改成
root
location /abc/ { root /home/html/; }
可以看到,使用root設置目錄的絕對路徑時,少了/abc,也就是說,使用root來設置前端非根目錄時,nginx會組合root和location的路徑。
另外,使用alias時目錄名後面一定要加“/”
Hits: 119