Linux
nginx將ip重定向到域名
我正在嘗試使用 nginx 和 gunicorn 部署一個網站。Nginx 提供靜態文件並充當 gunicorn 的代理。
這是我的 /etc/nginx/sites-available/herbop 文件的內容
server { listen 80; server_name herbop.com; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_intercept_errors on; proxy_pass http://127.0.0.1:8001; } location /static/ { autoindex on; alias /opt/Herbop-Backend/app/static/; } } server { listen 80; server_name 51.254.123.234; return 301 $scheme://herbop.com$request_uri; }
在這種情況下,我似乎得到了一個無限的重定向循環。
任何的想法 ?
- DNS:
herbop.com
使用A
記錄指向51.254.123.234
. (刪除現有的http重定向。)(注意:DNS是分佈式的,有時需要一些時間才能傳播。)- 嘗試以下 nginx 配置:
server { listen 80; server_name herbop.com; location /static/ { root /opt/Herbop-Backend/app; } location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_intercept_errors on; proxy_pass http://127.0.0.1:8001; } } server { listen 80; server_name 51.254.123.234; return 301 $scheme://herbop.com$request_uri; }
筆記:
- ((如果您只想為訪問者提供靜態文件,例如嵌入到您的 *.html 中的圖像等,則不需要
autoindex
。“ ngx_http_autoindex_module處理以斜杠字元(’/’)結尾的請求並產生一個目錄列表。$$ … $$“據我了解,您不需要這個,所以不要啟用它。))((不確定我是否正確,以及您的靜態文件是哪種類型。))- 關於您的
alias
指令:根據文件:“當位置與指令值的最後一部分匹配時:location /images/ { alias /data/w3/images/; }
好改用[root](http://nginx.org/en/docs/http/ngx_http_core_module.html#root)指令”:
cation /images/ { ot /data/w3;