我尝试使用 本教程 使用 Nginx 和 Gunicorn 部署一个 django 项目。我做了所有待办事项,但是,当我创建 /etc/nginx/sites-available/myproject
文件时,代码如下:
server {
listen 80;
server_name server_domain_or_IP;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/sammy/myproject;
}
location / {
include proxy_params;
proxy_pass http://unix:/home/sammy/myproject/myproject.sock;
}
}
然后运行 sudo nginx -t
查找错误,我得到这个错误:
nginx: [emerg] open() "/etc/nginx/proxy_params" failed (2: No such file or directory) in /etc/nginx/sites-enabled/myproject:11
nginx: configuration file /etc/nginx/nginx.conf test failed
我该如何解决这个问题?
原文由 msln 发布,翻译遵循 CC BY-SA 4.0 许可协议
proxy_params
99% 的时间(根据我的经验),— 文件的默认位置是proxy_params
文件的默认位置是/etc/nginx/proxy_params
对你来说似乎是一样的。proxy_params
文件包含以下内容:这些参数用于将信息转发到您要代理的应用程序。我曾使用过旧的
CentOS
服务器,它没有proxy_params
文件,我没有自己创建一个文件,而是直接包含了这些参数;位置块看起来像这样:所以这取决于你。如果该文件存在于另一个位置,只需将其包含在正确的位置:
include /path/to/proxy_params
否则你可以直接在位置块中包含参数(就像我上面做的那样)
或者自己创建一个并将其放在
/etc/nginx
(如果你想坚持使用当前代码)