HTTPS 在 url 中需要端口 80
Https require port 80 in url
使用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.
http
假定端口 80,https
假定端口 443。如果您希望浏览器覆盖这些默认值,则必须在 URL.[=18= 中指定端口]
正确的解决方案是在端口 80 上提供 http
并在端口 443 上提供 https
,在这种情况下,不需要在 URL 中提供端口,并且可以从方案中假定 (http
或 https
).
例如:
server {
listen 80;
listen 443 ssl;
...
}
详情见this document。
使用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.
http
假定端口 80,https
假定端口 443。如果您希望浏览器覆盖这些默认值,则必须在 URL.[=18= 中指定端口]
正确的解决方案是在端口 80 上提供 http
并在端口 443 上提供 https
,在这种情况下,不需要在 URL 中提供端口,并且可以从方案中假定 (http
或 https
).
例如:
server {
listen 80;
listen 443 ssl;
...
}
详情见this document。