nginx - SSL 対応サイト上の Apache および Socket.io のリバース プロキシ

nginx - SSL 対応サイト上の Apache および Socket.io のリバース プロキシ

私のSSLセキュリティ保護された Web アプリケーションは、Apache サーバー (PHP) と NodeJS (Socket.io) で構成されています。さまざまなネットワークでポートがブロックされる問題を解決するために、nginx設定したそれぞれのポートにリクエストをリダイレクトすることにしました。しかし、すべてを正しく構成するのに苦労しています。

編集済み:

nginx を使用してすべてのリクエストをリッスンし、PHP/NodeJS サービスにポイントしたいと思います。ファイルport 443の設定は次のとおりです。/etc/nginx/sites-available/default

server {

    listen 443;
    ssl on;
    ssl_certificate    /var/www/project/mynode/ssl.crt;
    ssl_certificate_key  /var/www/project/mynode/private.key;

    server_name domain.com ;
    access_log /var/log/nginx/nginx.vhost.access.log;
    error_log /var/log/nginx/nginx.vhost.error.log;

    root /var/www/;

    location /project/{
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass https://127.0.0.1:442/project/;
    }

    location /backend/{
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass https://127.0.0.1:8080/project/angular/backend/;
    }

    location /connect/{
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass https://127.0.0.1:9000/;
    }
}

そして、私は次の方法でソケットに接続しようとしています:

io.connect("https://www.domain.com/connect");

しかし、ソケットは接続されません。Apache のサービスは正常に動作します。

私が直面しているエラーは次のとおりです:

https://www.domain.com/socket.io/?EIO=3&transport=polling&t=1434534878619-0 404 (Not Found)

ただし、ポートについて言及すると、正常に動作します。動作するコードは次のとおりです。

io.connect("https://www.domain.com:9000");

ports.confドキュメントとガイドに従ってファイルを設定しapache2/sites-available/default、解釈できるすべてのことを試しましたが、ソケットを接続できません。

関連情報