我有一个EC2实例,其中Apache作为Web服务器(Wildfly作为应用程序服务器,尽管我不确定它与该问题无关)。在EC2的前面,我有一个负载平衡器,该负载平衡器终止HTTPS并应用SSL证书。
HTTP和HTTPS都可以在Chrome中正常运行,但不幸的是,在Safari中无法正常运行。访问http://test.papereed.com可以正常工作,但是访问https://test.papereed.com则会出现错误
"Safari can't open the page. The error is "The operation couldn't be completed. Protocol error" (NSPOSIXErrorDomain:100)"
我在/ etc / httpd / logs / error_log和/ etc / httpd / logs / access_log中以及在Safari控制台中都没有找到解决问题的任何提示。这就是我所学知识的发展程度:-(任何提示如何跟踪此问题的提示将不胜感激。
# Enable HTTP/2 by default # https://httpd.apache.org/docs/2.4/mod/core.html#protocols <IfModule mod_http2.c> Protocols h2 h2c http/1.1 </IfModule>
按照您的建议并更改为Protocols h2 http/1.1
不会删除升级标头,因此我将协议行保持原样并添加了以下内容:Header unset Upgrade
删除标头。不能说我对这里发生的事情/为什么如此