首页 > 解决方案 > Nginx 反向代理 - 从另一个站点提供内容

问题描述

我在一台虚拟服务器上托管多个站点,使用烧瓶/gunicorn/nginx 堆栈进行设置,一切正常。

站点 1:codeus.co.uk 站点 2:foo.com 站点 3:bar.com

然后是“postcoderoonie.co.uk”站点 4...(不要问)

我已经按照我一直以来的方式设置了每个站点,但是由于某种原因,当我请求站点 4 时,Nginx 正在提供“站点 1”。

即导航到 postcoderoonie.co.uk 显示 codeus.co.uk 内容。

站点 1 服务器块。

server {
        server_name codeus.co.uk www.codeus.co.uk;
        location / {
                include proxy_params;
                proxy_pass http://unix:/home/ubuntu/completeit/comepleteit.sock;
        }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/codeus.co.uk/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/codeus.co.uk/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot


}

server {
    if ($host = www.codeus.co.uk) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    if ($host = codeus.co.uk) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


        listen 80;
        server_name codeus.co.uk www.codeus.co.uk;
    return 404; # managed by Certbot

}

站点 2 服务器块:

server {
    server_name postcoderoonie.co.uk www.postcoderoonie.co.uk;

    location / {
        include proxy_params;
        proxy_pass http://unix:/home/ubuntu/postcoderoonie/postcoderoonie.sock;
    }

   listen 80;

}

我认为它与具有相似名称的站点有关,它首先找到 site1,然后传递到 site1 套接字。

日志都显示正常,没有错误等。

谁能建议谁,什么,如何,为什么以及在哪里?

标签: nginxgunicorn

解决方案


推荐阅读