网站在ios、和macos使用Safari上无法访问的问题解决

wp应用技术

使用了nginx反向代理的网站,在IOS和mac os上使用Safari浏览器无法打开的问题

在近期有一位客户遇到了网站在苹果设备,无论是iPhone、ipad还是mac上面使用Safari浏览器打开网站都显示“Safari打不开该网页,因为已经丢失网络连接”。

但在windows和Android设备上打开网站则是正常可以打开的,针对此问题,我们进行了排查,是发现客户的站点使用了一台服务器nginx反向代理内网服务器对外访问,而网站本身的服务器则是apache的。

原因是如果原始请求已在http/2中,iOS 10+不支持在响应中包含Upgrade标头。解决方案是隐藏Apache服务器提供的Upgrade标头,因为Nginx已升级为Apache请求(Nginx发送http/1.1请求,Apache已在http/2中升级)。

当请求已经在 http2 中时,iOS 无法处理“协议升级请求”。两台服务器配置在 apacheProtocols h2 http/1.1和 nginx 中都启用了 http2。

因此解决的方式是,在apahce源服务器中找到 apahce配置文件 搜索 Protocols h2 http/1.1 并且去除,去除之后重启apahce即可正常访问了。

此问题较为小众,在文此记录解决方法。

上一篇:

下一篇:

文章评论

您好!请登录

取消回复
    展开更多