Nginx

在 Nginx server_name 中使用 IP 地址我 Django

  • April 17, 2017

我正在使用 django、uwsgi 和 nginx。我已經嘗試過使用 nginx 和 django 文件來提供靜態文件。我的conf文件是:

http {


upstream django {
   server 127.0.0.1:8000;
}

server {
   listen 80;
   server_name 192.xx.xx.x;

   root /path/to/project/;


   location /static/  {
       alias /path/to/static/;
   }

   location / {
       include /etc/nginx/uwsgi_params;
       uwsgi_pass django;

       uwsgi_param Host $host;
       uwsgi_param X-Real-IP $remote_addr;
       uwsgi_param X-Forwarded-For $proxy_add_x_forwarded_for;
       uwsgi_param X-Forwarded-Proto $http_x_forwarded_proto;
   }
}
}

我的配置文件是真的嗎?我可以在server_name部分中使用 IP 地址嗎?(IP地址是我的機器IP)

根據https://nginx.org/en/docs/http/ngx_http_core_module.html#server

基於 IP(基於 IP 地址)和基於名稱(基於“Host”請求標頭欄位)的虛擬伺服器之間沒有明確的區別。相反,listen 指令描述了應該接受伺服器連接的所有地址和埠,並且 server_name 指令列出了所有伺服器名稱。

可以在https://nginx.org/en/docs/http/request_processing.html找到 nginx 如何處理請求的概述,可以在此處找到提供靜態內容的概述:https ://www.nginx.com /resources/admin-guide/serving-static-content/

我在您的配置中看不到任何會阻止事情正常工作的東西 - 您是否測試過您的配置並遇到任何問題?

引用自:https://serverfault.com/questions/837910