プロトコルエラー NSPOSIXErrorDomain:100 の解決策


問題点

PCのSafariで下記のようなエラーが表示され、サイトが表示できなくなりました。

MobileのSafariで確認しても、期待する画面は表示されず、先に進めなくなった。

解決策

上記の記事では、ELBのHTTP/2を無効化して解決しているのですが、今回はHTTP/2は使い続けたかったので当てはまりませんでした。

Upgradeヘッダがあることで、ブラウザ側でエラーが起きているのが原因だったため、このUpgradeヘッダを出力しないようにする必要があります。

参考: https://httpd.apache.org/docs/2.4/howto/http2.html

Protocols h2 h2c http/1.1

httpd.conf内にある上記の記述で、HTTP/1のリクエストをHTTP/2にプロトコル変換をするよう設定しています。

HTTP/1のリクエストはHTTP/1のまま、HTTP/2のリクエストはHTTP/2で返却してもらえればよかったので、今回はhttpd.conf内にあるこの記述を外すことで対応しました。

無事、PC&MobileのSafariでも画面表示されるようになりました。