Heim  >  Fragen und Antworten  >  Hauptteil

Wie verbiete ich den IP-Zugriff auf die HTTPS-Site (nginx)?

So verbieten Sie einer IP den direkten Zugriff auf HTTPS

Die folgenden Einstellungen in Nginx:

server {
    listen 80;
    listen 443 ssl spdy;
    root /data0/web/domain.com;
    server_name domain.com *.domain.com;
    index index.html index.htm index.php;

    location / {
    }
}

##default
server {
    listen 80 default;
    listen 443 default;

    server_name _;

    root /data0/web/empty;

    location / {
        return 500;
    }
}

Richten Sie es wie oben beschrieben ein und greifen Sie auf https://ip zu. SSL funktioniert nicht. Selbst wenn Sie https://domain.com besuchen, können Sie nicht darauf zugreifen.

阿神阿神2712 Tage vor841

Antworte allen(3)Ich werde antworten

  • ringa_lee

    ringa_lee2017-05-16 17:29:35

    使用这样的代码就Ok了

    server 
            {
                    listen 443 default;
                    return 400;
            }
    

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 17:29:35

    server
    {
        listen 443 ssl default_server;
        ssl_certificate      path_to_your_fullchain.cer;
        ssl_certificate_key  paht_to_your_key;
        return 301 https://demo.com;
    }
    

    一定要配置 ssl 证书,要不然不起作用

    Antwort
    0
  • 黄舟

    黄舟2017-05-16 17:29:35

    listen 80 default;
    server_name domain.com *.domain.com;
    ...
    
    if ( $host ~* "\d+\.\d+\.\d+\.\d+" ) {
        return 400;
    }
    

    Antwort
    0
  • StornierenAntwort