Nodejsアプリケーションのポート番号は3001
で、このアプリはhttpで動作しますが、httpsでは動作しません。 Apacheサーバーで、80
または443
のリバースプロキシを5001
に設定し、3001のリバースプロキシも設定します。
http://<domain>:3001/socket.io/socket.js ---> Work
https://<domain>:3001/socket.io/socket.js ---> Not Work(Secure Connection Failed or This site can’t be reached)
ここで、同じポート(3001
)がhttp
とhttps
で動作することを知る必要がありますか?
そのための解決策はありますか?
いいえ、同じポートでHTTPとHTTPSを実行することはできません。
HTTPSを使用する場合、接続は最初からSSL/TLSプロトコルを使用します。クライアントがプレーンHTTPを使用して送信を開始する可能性はありません。
SSL/TLS標準では、ポートでプレーンテキスト通信が検出された場合にHTTPに戻す方法は提供されていません。