【问题标题】:nginx server_name while setting up Django project设置 Django 项目时的 nginx server_name
【发布时间】:2020-03-03 10:19:44
【问题描述】:
server {
    listen 80;
    server_name server_domain_or_IP;

    location = /favicon.ico { access_log off; log_not_found off; }
    location /static/ {
        root /home/sammy/myprojectdir;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/gunicorn.sock;
    }
}

我已经在 server_name 中输入了我的 IP 地址,它运行良好。我将我的域转发到受尊重的 IP 地址,但是当我打开我的域地址时,它显示的是“欢迎使用 Nginx”,而不是我的 Web 应用程序。

我必须在可用的 nginx 站点中提供域吗??

【问题讨论】:

  • 'Welcome to Nginx' 意味着有另一个 server 块是 default_server 并且匹配任何不明确匹配您的 server_name 指令的请求。使用nginx -T(大写T)查看所有文件的整个配置,如果它给您带来问题,请删除另一个server块。
  • @RichardSmith,是的,因为在设置可用站点时我没有提供域名,我只在那里提供 IP。我应该用域替换IP吗?
  • “欢迎使用 Nginx”是一个演示,用于证明您已正确安装 Nginx。如果是我,我会摆脱它。如果您决定保留它,则需要使用您的网站将响应的所有名称。见this document

标签: django nginx digital-ocean


【解决方案1】:

默认安装nginx会占用80端口,如果你在路径/etc/nginx/sites-available/default看到默认配置文件,你可以看到默认端口会监听80,要么将默认端口80更改为其他端口,要么将当前项目端口更改为其他端口,最后重新启动nginx以查看更改。希望对您有所帮助!

【讨论】:

  • 所以我不能在端口 80 上使用我的应用程序吗?
  • 你可以使用,这就是我提到的,将默认端口 80 更改为文件 /etc/nginx/sites-available/default 中的其他端口
【解决方案2】:

无需编辑 Nginx 站点可用,因为我添加了带有和不带有“www”的域名。到 settings.py 和 Nginx 的可用站点中的 ALLOWED_HOST 我只是用和不带“www”替换了我的 IP 我的域名。就是这样,现在只需重新启动 gunicorn 和 Nginx。

【讨论】:

    猜你喜欢
    • 2013-01-04
    • 1970-01-01
    • 2016-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-11
    • 2020-01-25
    • 2013-01-05
    相关资源
    最近更新 更多