Cloudflare绑定自定义域名后Streamlit网站空白,SSL握手失败求助
Streamlit社区云自定义域名访问空白页面排查
部署在Streamlit社区云的网站,通过自定义域名访问时显示空白页面,具体情况如下:
操作步骤
- 完成网站开发,将GitHub仓库关联至Streamlit并完成部署
- 在Cloudflare控制台添加两条CNAME记录,分别将主域名和www子域名指向Streamlit站点
症状
- 通过Streamlit原生链接访问网站一切正常
- 使用自定义域名访问时页面空白,仅标签页显示Streamlit图标和默认标题,无自定义内容加载
当前项目目录结构
- app.py
- requirements.txt
.streamlit文件夹(包含config.toml文件)
已尝试的Cloudflare配置调整
- 将SSL模式改为Full(设置为Flexible时出现重定向错误)
- 关闭“始终使用HTTPS”
- 关闭“自动HTTPS重写”
- 尝试将CNAME记录替换为指向站点IP的A记录
SSL排查结果
执行openssl s_client -connect <my site URL>:443后,返回SSL握手失败,输出如下:
CONNECTED(00000005) 8679580928:error:1404B410:SSL routines:ST_CONNECT:sslv3 alert handshake failure:/AppleInternal/Library/BuildRoots/810eba08-405a-11ed-86e9-6af958a02716/Library/Caches/com.apple.xbs/Sources/libressl/libressl-3.3/ssl/tls13_lib.c:129:SSL alert number 40 --- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 7 bytes and written 287 bytes --- New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1.3 Cipher : 0000 Session-ID: Session-ID-ctx: Master-Key: Start Time: 1677549075 Timeout : 7200 (sec) Verify return code: 0 (ok)
Cloudflare控制台中边缘证书显示有效且活跃,但仍出现SSL握手失败。
疑问
- 是否需要额外安装SSL证书并配置
.streamlit/config.toml? - 有没有SSL证书自动续期的方案?
- 还有哪些可执行的排查步骤?
内容的提问来源于stack exchange,提问作者AVGVSTVS
相关产品推荐
相关产品推荐

