Django + Nginx 配置(获取“Welcome to nginx!”)

Sch*_*tac 2 django nginx

我在 Ubuntu 上有 Django + Nginx + Gunicorn。使用 Letscrypt 生成的证书。

/etc/nginx/sites-available/myproject中我有:

server {
    server_name myproject.com www.myproject.com;
    listen 80;
    return 301 https://myproject.com$request_uri;
}

server {
    server_name myproject.com www.myproject.com;

    listen 443;

    ssl on;
    ssl_certificate /etc/letsencrypt/live/myproject.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/myproject.com/privkey.pem;

    client_max_body_size 1G;

    root /home/myname/myproject;

    location / {
        include proxy_params;
        proxy_pass https://unix:/home/myname/myproject/myproject.sock;
    }
}
Run Code Online (Sandbox Code Playgroud)

/etc/nginx/sites-available/default中,除了注释行之外,我有:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    root /var/www/html;

    index index.html index.htm index.nginx-debian.html;

    server_name _;

    location / {
            try_files $uri $uri/ =404;
    }
}
Run Code Online (Sandbox Code Playgroud)

/etc/nginx/sites-enabled中,我有 default 和 myproject。

当我访问https://myproject.com时,我看到“欢迎来到 nginx!”,但我希望看到 Django 的默认页面。我做错了什么,它重定向到“欢迎来到 nginx!”?

Qte*_*teb 6

只需禁用默认配置:

rm /etc/nginx/sites-enabled/default
systemctl reload nginx
Run Code Online (Sandbox Code Playgroud)

  • 谢谢!默认禁用。之后我得到了 502 错误。当将 proxy_pass 从 https 更改为 http 时,效果很好。 (2认同)