Почему nginx по-прежнему перенаправляет URL-адреса, когда не настроен для этих URL-адресов - настройка обратного прокси - PullRequest
0 голосов
/ 10 июля 2019

У меня есть следующий конф

worker_processes  1;

events {
    worker_connections  1024;
}


http {
include       mime.types;
default_type  application/octet-stream;

sendfile        on;

keepalive_timeout  65;

    server {
            listen 8443 ssl;
            server_name unifi.bob.net;

            ssl on;
            ssl_protocols TLSv1.2;
            ssl_prefer_server_ciphers on;
            ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:!ADH:!AECDH:!MD5;
            ssl_certificate /var/lib/docker/volumes/letsencrypt/_data/live/unifi.bob.net/fullchain.pem;
            ssl_certificate_key /var/lib/docker/volumes/letsencrypt/_data/live/unifi.bob.net/privkey.pem;

            location /wss/ {
                    proxy_pass https://192.168.1.3:8443;
                    proxy_http_version 1.1;
                    proxy_buffering off;
                    proxy_set_header Upgrade $http_upgrade;
                    proxy_set_header Connection "Upgrade";
                    proxy_read_timeout 86400;
            }

            location / {
                    proxy_pass https://192.168.1.3:8443/;
                    proxy_set_header Host $host;
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
            }
    }

    server {
            listen 8443 ssl;
            server_name nas.bob.net;

            ssl on;
            ssl_protocols TLSv1.2;
            ssl_prefer_server_ciphers on;
            ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:!ADH:!AECDH:!MD5;
            ssl_certificate /var/lib/docker/volumes/letsencrypt/_data/live/nas.bob.net/fullchain.pem;
            ssl_certificate_key /var/lib/docker/volumes/letsencrypt/_data/live/nas.bob.net/privkey.pem;

            location / {
                    proxy_pass http://192.168.1.254:8080/;
                    proxy_set_header Host $host;
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
            }
    }


    server {
            listen 880;
            server_name unifi.bob.net;

            return 301 https://unifi.bob.net$request_uri;
    }

    server {
            listen 880;
            server_name nas.bob.net;

            return 301 https://nas.bob.net$request_uri;
    }


}

это все работает нормально, если я нажму http://nas.bob.net, я получаю перенаправление на https://nas.bob.net и на внутренний ресурс нормально, это также работает для unifi.bob.net

однако, если я попробую свой внешний ip или запись, я буду перенаправлен на ресурс unifi?

не должен ли он просто ничего не делать или я что-то упустил из конфига?

Спасибо

1 Ответ

0 голосов
/ 24 июля 2019

Найдено, чтобы ответить, у меня не установлен default_server в любой конфигурации.теперь добавил это и все работает, как ожидалось

Спасибо

...