HTTPS требуют порт 80 в URL - PullRequest
       14

HTTPS требуют порт 80 в URL

0 голосов
/ 12 декабря 2018

Использование версии Nginx 1.12.1 Без порта ни один указанный URL не будет работать для Https, т. Е. https://test.domain.com:80

Ниже приведен код:

server {
        listen 80 default_server;
        listen [::]:80 default_server;
        ssl on;
        server_name ~^(?<subdomain>[^.]+)\.domain.com$;

        ssl_certificate /etc/ssl/ssl_certificate.cer;
        ssl_certificate_key /etc/ssl/sslnew.key;

        root /var/www/$subdomain;
        index index.html;
        location / {
                try_files $uri $uri/ =404;

        }

}

Если я уберу «SSL on»тогда https не будет работать, но он будет работать без порта, т.е. test.domain.com.

1 Ответ

0 голосов
/ 12 декабря 2018

http предполагает порт 80, а https предполагает порт 443. Если вы хотите, чтобы браузер переопределял эти значения по умолчанию, порт должен быть указан в URL.

Правильное решение - предоставить http через порт 80 и https через порт 443, в этом случае порт не нужно указывать в URL-адресе, и его можно использовать по схеме (http или https).

Например:

server {
    listen  80;
    listen  443 ssl;
    ...
}

Подробнее см. в этом документе .

...