Azure应用网关配置HTTPS路径路由规则时出现ERR_EMPTY_RESPONSE错误求助
Azure应用网关配置HTTPS路径路由规则时出现ERR_EMPTY_RESPONSE错误求助
我来帮你分析下这个问题,你现在的情况是HTTP路由完全正常,但切换到HTTPS监听后就出现了ERR_EMPTY_RESPONSE,大概率是SSL相关的配置出了问题,咱们一步步排查:
首先看最可能的问题:自签名证书的域名不匹配
你生成自签名证书的PowerShell命令里,指定的DNS名称是subdomain.domain.name,但实际使用的域名是subdomain.domain.com,而且HTTPS监听设置的主机名是*.domain.com——这就导致证书的域名和实际访问的域名不匹配,SSL握手直接失败,应用网关无法处理请求,自然返回空响应。
解决办法是重新生成包含正确域名的自签名证书,比如同时包含通配符和具体子域名:
# 生成包含通配符和具体子域名的自签名证书 New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname "*.domain.com", "subdomain.domain.com" # 导出PFX证书(替换证书指纹为新生成的证书指纹) $pwd = ConvertTo-SecureString -String "12345" -Force -AsPlainText Export-PfxCertificate -cert cert:\localMachine\my\新证书的指纹 -FilePath c:\new-cert.pfx -Password $pwd
然后把新的PFX证书上传到应用网关的证书存储,更新HTTPS监听使用这个新证书。
检查HTTPS监听的配置细节
- 主机名匹配:如果你用的是多站点监听,建议直接指定
subdomain.domain.com作为主机名,而不是*.domain.com——除非你的证书确实包含*.domain.com的通配符域名,否则会出现匹配失败的问题。 - 端口确认:确保HTTPS监听使用的是默认的443端口,没有被其他监听规则占用。
验证后端健康状态
切换到HTTPS监听后,去Azure门户查看后端池的健康状态:
- 如果后端池显示不健康,说明应用网关的健康探针无法正常访问后端App Service,这也会导致网关不转发请求,返回空响应。
- 你当前的后端设置用了HTTPS协议,确认健康探针的配置是否和后端设置匹配(比如协议、主机名),App Service本身的HTTPS是否正常可用。
测试SSL握手
可以用openssl工具测试SSL连接是否正常,比如:
openssl s_client -connect subdomain.domain.com:443
如果输出里显示握手失败或者证书不匹配的错误,就坐实了证书的问题,按照第一步重新生成证书即可。
备注:内容来源于stack exchange,提问作者Dimitri
相关产品推荐
相关产品推荐

