1Panel icon indicating copy to clipboard operation
1Panel copied to clipboard

[BUG] 相同域名不同端口的反向代理,启用HTTPS出错。

Open mia0x75 opened this issue 10 months ago • 2 comments

联系方式

No response

1Panel 版本

1.10.2

问题描述

使用同一个域名,不同端口号,反向代理到不同容器,开启HTTPS后配置出错。

开启HTTPS前后,配置文件对比:

3a4,7
>     listen 443 ssl http2 ; 
>     listen [::]:443 ssl http2 ; 
>     listen 80 ; 
>     listen [::]:80 ; 
35a40,54
>     if ($scheme = http) {
>         return 301 https://$host$request_uri; 
>     }
>     ssl_certificate /www/sites/domain-rp7100/ssl/fullchain.pem; 
>     ssl_certificate_key /www/sites/domain-rp7100/ssl/privkey.pem; 
>     ssl_protocols TLSv1.3 TLSv1.2 TLSv1.1 TLSv1; 
>     ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; 
>     ssl_prefer_server_ciphers on; 
>     ssl_session_cache shared:SSL:10m; 
>     ssl_session_timeout 10m; 
>     add_header Strict-Transport-Security "max-age=31536000"; 
>     error_page 497 https://$host$request_uri; 
>     proxy_set_header X-Forwarded-Proto https; 
>     ssl_stapling on; 
>     ssl_stapling_verify on;

问题出现在第一段,也就是说同一个域名,多个端口,每个里面都会server的配置里面都监听80/443,造成了解析混乱。

重现步骤

截图 2024-04-16 20-18-17

分别添加两次网站,使用同一个域名+不同的端口,然后每个网站都启用HTTPS。

期待的正确结果

No response

相关日志输出

No response

附加信息

No response

mia0x75 avatar Apr 16 '24 12:04 mia0x75

配置出错是 https 窜站了吗?可以考虑把某个 https 网站设置为默认网站

zhengkunwang223 avatar Apr 16 '24 14:04 zhengkunwang223

意思是说,只要启用HTTPS,1panel就会增加

listen 443 ssl http2 ; 
listen [::]:443 ssl http2 ; 
listen 80 ; 
listen [::]:80 ; 

到配置中,而我的域名都是同一个,只是端口号不同,这个就有问题了。

对于 domain:port类型的网站,配置应该是:

listen ${port} ; 
listen [::]:${port} ; 

启用 HTTPS后

listen ${port} ssl http2 ; 
listen [::]:${port} ssl http2 ; 

不需要加80/443。

另外IPv4,IPv6建议都显示出来,至少选一个。现在宽带接入公网IPv4很少了,比如只选IPv6

HTTP就是

listen [::]:${port} ; 

HTTPS就是

listen [::]:${port} ssl http2 ; 

mia0x75 avatar Apr 16 '24 14:04 mia0x75

1Panel 逻辑是 你安装 OpenResty 会配置默认的 http 和 https 端口 开启 https 的时候 会设置默认的 https 端口 如果你添加了域名:端口 我们是不会处理的 因为如果你添加了 10 个不同的域名:端口 我们无法确定你要给哪个开启 https

zhengkunwang223 avatar May 21 '24 09:05 zhengkunwang223