Python nginx:[警告]服务器名称冲突“;域名“;在0.0.0.0:80上,忽略

Python nginx:[警告]服务器名称冲突“;域名“;在0.0.0.0:80上,忽略,python,django,nginx,deployment,Python,Django,Nginx,Deployment,我买了一个域名,将我的django应用程序部署到DigitalOcean,但这个错误不允许我使用这个应用程序。我怎样才能忽略这个错误?这是我的密码: setting.py: ALLOWED_HOSTS = ['blablabla.com', '64.225.12.157'] nginx: server { listen 80; server_name blablabla.com; location = /favicon.ico { access_log off; lo

我买了一个域名,将我的django应用程序部署到DigitalOcean,但这个错误不允许我使用这个应用程序。我怎样才能忽略这个错误?这是我的密码:

setting.py:

ALLOWED_HOSTS = ['blablabla.com', '64.225.12.157']
nginx:

server {
    listen 80;
    server_name blablabla.com;

    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;
    }
}
默认nginx:

        root /var/www/blablabla.com;

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

        server_name blablabla.com;

        location / {
                try_files $uri $uri/ =404;
        }
您有两个问题(第二个问题主要是建议):


第一名:

您已经在两个地方定义了
server\u name
指令——一个在默认的
http
块中,另一个在
server
块中。在默认的
http
块中删除引用,并仅在
服务器
块中保留引用。另外,除非您知道自己在做什么,否则也可以从
http
块中删除
location/
指令,这些位置通常放在
server
块中,以便为该服务器进行URL映射。将其放在http块中会全局执行映射,这会在调试时跟踪映射时引起头痛


秒:

Django使用WSGI协议,因此(在生产中)需要一个WSGI服务器来发送请求并从Django获得响应。假设您使用的是UNIX域套接字引用中给出的一个:

/home/sammy/myproject/myproject.sock
因此,如果您的WSGI服务器(例如,
uWSGI
gunicorn
)侦听该套接字上的传入请求,并通过该套接字发送响应,则需要告诉Nginx使用WSGI协议从套接字发送检索数据,并传递相关的WSGI参数。这方面的一个例子是:

upstream foobar {
    server unix:///home/sammy/myproject/myproject.sock;
}

server {
    server_name blablabla.com;
    ...
    ...
    location / {
        uwsgi_pass foobar;
        include /etc/nginx/uwsgi_params;
    }
}

您当前通过
proxy\u pass进行反向代理的配置将起作用,但使用WSGI会使您更接近底层使用的底层协议,因此建议您这样做。

请添加完整的Nginx配置和完整的错误消息。@heemayl配置正是我发布的配置,但完整的错误是:
Nginx:[警告]0.0.0:80上的冲突服务器名“blablabla.com”,已忽略nginx:configuration file/etc/nginx/nginx.conf语法正常nginx:configuration file/etc/nginx/nginx.conf测试成功
@heemayl已添加,请提供帮助