nginx配置相關

北緯32.6發表於2020-11-28

nginx快速檢視配置檔案的方法

nginx的配置放在nginx.conf檔案中,一般我們可以使用以下命令檢視伺服器中存在的nginx.conf檔案。

locate nginx.conf
/usr/local/etc/nginx/nginx.conf
/usr/local/etc/nginx/nginx.conf.default
...

如果伺服器中存在多個nginx.conf檔案,我們並不知道實際上呼叫的是哪個配置檔案,因此我們必須找到實際呼叫的配置檔案才能進行修改。

檢視nginx實際呼叫的配置檔案

1.檢視nginx路徑

 
ps aux|grep nginx

root              352   0.0  0.0  2468624    924   ??  S    10:43上午   0:00.08 nginx: worker process  

root              232   0.0  0.0  2459408    532   ??  S    10:43上午   0:00.02 nginx: master process /usr/local/opt/nginx/bin/nginx -g daemon off;  

root             2345   0.0  0.0  2432772    640 s000  S+    1:01下午   0:00.00 grep nginx

nginx的路徑為:/usr/local/opt/nginx/bin/nginx 

2.檢視nginx配置檔案路徑

 

使用nginx的 -t 引數進行配置檢查,即可知道實際呼叫的配置檔案路徑及是否呼叫有效。

/usr/local/opt/nginx/bin/nginx -t
nginx: the configuration file /usr/local/etc/nginx/nginx.conf syntax is ok
nginx: configuration file /usr/local/etc/nginx/nginx.conf test is successful
測試可知,nginx的配置檔案路徑為:/usr/local/etc/nginx/nginx.conf 且呼叫有效。

/usr/local/opt/nginx/bin/nginx -s reload重新載入

其他

server {
    #nginx監聽80埠
    listen       80;
    #主機名稱 
    server_name  www.load.com;
    
     #nginx代理後,如果靜態資源無法載入出現404的錯誤,可以考慮此配置
     #配置靜態資源 解決js css檔案無法載入無法訪問的問題,注意末尾不能有 /
     #location ~ (/web/).*\.(js|css|jpg|jpeg|gif|png|ico|pdf|txt|doc)$ {
     #    proxy_pass http://localhost:8080;
     # }

    #配置靜態資源 解決js css檔案無法載入無法訪問的問題,注意末尾不能有 /
    #location ~ (/admin/).*\.(js|css|jpg|jpeg|gif|png|ico|pdf|txt|doc)$ {
    #      proxy_pass http://localhost:8082;
    #}
    
    #路徑轉發地址注意事項:
   正確轉發路徑的規則:
    (^/xxx).*  這樣轉發l路徑不會出錯
    錯誤轉發路徑規則:
     /xxx    如果出現了包含路徑就會轉發失敗,例如:/admin/webuplod/就會轉發到web模組了,無法轉發到admin模組,就會出404的錯誤。
       
    #/web路徑轉發地址
    location  ~ (^/web).*  {
        proxy_pass http://192.168.2.75:8080;
        proxy_set_header Host                $host:$server_port;
        proxy_set_header X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto   $scheme;
        proxy_set_header X-Forwarded-Port    $server_port;
    }
   
    #api路徑轉發地址
    location ~ (^/api).* {
        proxy_pass http://192.168.2.75:8081;
        proxy_set_header Host                $host:$server_port;
        proxy_set_header X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto   $scheme;
        proxy_set_header X-Forwarded-Port    $server_port;
    }
    
    #admin路徑轉發地址
    location ~ (^/admin).* {
        proxy_pass http://192.168.2.75:8082;
        proxy_set_header Host                $host:$server_port;
        proxy_set_header X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto   $scheme;
        proxy_set_header X-Forwarded-Port    $server_port;
    }
   
   #根目錄轉發路徑
    location ~/ {
        proxy_pass http://192.168.2.75:8080;
        proxy_set_header Host                $host:$server_port;
        proxy_set_header X-Forwarded-For     $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto   $scheme;
        proxy_set_header X-Forwarded-Port    $server_port;
    }

}

 

相關文章