整个错误
错误请求
客户端需要为该请求建立新连接,因为请求的主机名与用于此连接的服务器名称指示 (SNI) 不匹配。
stories.therelevancehouse.com 端口 443 上的 Apache 服务器
我有一个与我的公司网站链接的博客页面https://www.therelevancehouse.com/。当我尝试从此页面转到https://stories.therelevancehouse.com/使用标题导航“故事”按钮时,它会显示上述错误。但如果我刷新页面,它就会正常工作。此外,当我直接打开https://stories.therelevancehouse.com/并尝试通过单击左上角的徽标返回主页,但显示相同的错误。
答案1
此链接似乎表明您可以请求 SSL 提供商为您的多域证书设置 SNI 以修复错误: https://webidextrous.com/how-to-solve-421-misdirected-request-errors/
答案2
我能够通过改变 location.href 来绕过这个问题,直接导航到返回 302 重定向的端点,而不是使用锚标记 (<a href=>) 或发出 get 请求。是的,我有一个带通配符的证书(例如 *.mysite.com)
答案3
我遇到了同样的错误。要修复它,您必须检查值ServerName
。在我的例子中,端口上的值80
与端口上的值相同443
,所以我得到了如下结果:
<VirtualHost website.fr:80>
ServerName MyWebsite
</VirtualHost>
<VirtualHost website.fr:443>
ServerName MyWebsite
</VirtualHost>
现在,我正在使用:
<VirtualHost website.fr:80>
ServerName "website80"
</VirtualHost>
<VirtualHost website.fr:443>
ServerName "website443"
</VirtualHost>
例如 ServerNames 不同,它可以正常工作。