nginx - ssl 和 www 重定向配置

nginx - ssl 和 www 重定向配置

这与以下内容相关:
https://stackoverflow.com/questions/24538973/django-allowed-hosts-error-for-www-domain-and-ip-address

我正在尝试将 www 和非 SSL 请求重定向到我的网站的 SSL 非 www 域。我正在运行 nginx 作为前端 Web 服务器

不幸的是我仍然有几个问题:
* 如果我运行https://www.domain.com,我收到 http400
* 我仍然收到来自底层应用程序的错误,它正在接收 www.domain.com 和 < ipaddress > 上的请求

有人能帮忙指出我的下面的配置有什么问题吗?

server {
    listen <ip address>:80;
    server_name "";
    return 444;
}


server{
    listen <ip address>:80;

    server_name www.domain.com;
    return 301 $scheme://domain.com$request_uri;
}

#HTTPS server
server{
    listen <ip address>:80;
    listen <ip address>:443 ssl;
    server_name domain.com;

    location / {
        uwsgi_pass  unix:<path to socket file>;
        include /etc/nginx/uwsgi_params;    
    }

    if ($ssl_protocol = ""){
        return 301 https://$host$request_uri;
    }

}

相关内容