Ubuntu
訪問 nginx 狀態時繞過本地主機上的 SSL
我有一個位置
/nginx_status
,昨晚我安裝了 SSL 證書。server { listen 443; ... location /nginx_status { stub_status on; access_log off; allow 127.0.0.1; deny all; } }
當它仍在埠 80 上時,這是在進行預證書安裝。現在,我已經進行了重定向,以將 www.domain.tld 和 domain.tld 流量重定向到 https,例如
server { listen 80; server_name domain.tld; return 301 https://domain.tld$request_uri; } server { listen 80; server_name www.domain.tld; return 301 https://domain.tld$request_uri; }
我正在使用 graphdat-relay 來監視 nginx 統計資訊,現在
curl http://127.0.0.1/nginx_status
只獲取重定向頁面,例如<html> <head><title>301 Moved Permanently</title></head> <body bgcolor="white"> <center><h1>301 Moved Permanently</h1></center> <hr><center>nginx/1.6.2</center> </body> </html>
如何告訴 nginx 繞過 SSL 並僅在本地允許 /nginx_status ?
為此添加一個僅偵聽本地主機的特殊伺服器。
server { listen 127.0.0.1:80; listen [::1]:80; ... location /nginx_status { stub_status on; access_log off; allow 127.0.0.1; deny all; } }