ssl - Https 在 url 中需要端口 80
问题描述
使用 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 中指定端口。
正确的解决方案是http
通过端口 80 和https
端口 443 提供,在这种情况下,不需要在 URL 中提供端口,可以从方案(http
或https
)中假设。
例如:
server {
listen 80;
listen 443 ssl;
...
}
有关详细信息,请参阅此文档。
推荐阅读
- linux - 使用 Windows ACL (Samba) 设置共享
- c# - 如何将属性添加到让用户从列表中选择的自定义组件
- python-3.x - 安装模块时 DLL 加载失败
- sql - Microsoft SQL Server - 限制用户访问单个视图
- java - 使用正则表达式检测字符串中的脚注标记
- visual-studio-code - 我可以在 settings.json 中全局设置环境变量吗?
- mysql - 错误执行任务 write() 参数必须是 str,而不是 bytes | MySQL 工作台
- ssh - ESXi SSH 会话退出终止正在运行的作业 - nohup 相同的结果
- javascript - 以更优化的方式发送具有重复模式但不同内容的 Discord 嵌入
- android - 我可以用什么来制作像笔记应用程序这样的应用程序,其中有意外数量的笔记