我正在使用 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:
可以在https://nginx.org/en/docs/http/request_processing.html找到 nginx 如何处理请求的概述,可以在此处找到提供静态内容的概述:https ://www.nginx.com /resources/admin-guide/serving-static-content/。
我在您的配置中看不到任何会阻止事情正常工作的东西 - 您是否测试过您的配置并遇到任何问题?
是的,您可以将服务器名称更改为机器 IP 地址以服务 django 应用程序,额外的工作是,您必须在应用程序的 settings.py 文件中将主机变量分配为 IP 地址。