NGinx 最佳實踐

NGinx 最佳實踐

您在使用 NGinx 時採用了哪些最佳實務?

答案1

如何組合 HTTP 和 HTTPS 區塊。

server {
    listen 80;
    listen 443 default ssl;

    # other directives
}

這是作為對另一個問題的回答而發布的。看這裡

答案2

到目前為止,我見過的最好的建議來自其陷阱頁面上的作者:https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/

答案3

一般來說,使用「if」是一種不好的做法(根據 nginx 的作者的說法)。如果可能,最好使用 error_page 指令的 try_file 而不是“if (-f ...)”

將tip與maintenence.html檔案和tip與try_files結合起來,我們得到:

地點 / {
    try_files /maintenance.html $uri $uri/ @wordpress;
}

當維護結束時,只需從 $root 中 mv Maintenance.html 即可。

答案4

在切換匹配子域的根時,使用map指令代替正規表示式通常更有效:

server {

    server_name mysite.tld ~^.+\.mysite\.tld$;

    map $host $files {
        default            common;
        mysite.tld         common;
        www.mysite.tld     common;
        admin.mysite.tld   admin;
        system.mysite.tld  system;
        *.mysite.tld       users;
    }

    root /var/www/mysite/$files;

}

相關內容