停止 nginx 在没有主机的情况下提供服务

停止 nginx 在没有主机的情况下提供服务

如果我在浏览器中或使用 curl 访问我的服务器 ip 地址(例如:)curl -v http://5.5.5.5/,nginx 会将 http 重定向到 https(ip 地址作为主机),然后为我的网站提供服务。如果我直接使用,也会发生同样的事情https://ip addr。如果没有域名,如何阻止 nginx 提供服务?(即https://my-domain.com

我尝试将我的域名放在 443 后面,但 nginx 抱怨该参数不应该在那里(nginx 1.18)。我尝试检查是否有意外捕获,但grep -r "_;"没有结果

server {
    listen 443 ssl; # managed by Certbot
    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    server_name example.com;
    ...
}

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

答案1

您可以添加新的服务器块来定义default_server示例:

server {
    listen      80 default_server;
    listen      [::]:80 default_server;
    server_name <your IPs>;
    return      444;
}

444 HTTP 代码含义连接关闭且无响应

引用:https://stackoverflow.com/a/42802777/10585581

相关内容