mod_proxy_wstunnelでwebsoketをリバースプロキシしようとしてもどうしても400になるんですよ。
単体でやるとできたりするんだけど、nodejsと組み合わせるとことごとく動かない!!!
調べるといろいろがんばってうまくできたと言う事例もあるのですが、
2時間ぐらいがんばってみたのですがそれにあわせてやってもどうも出来ない。
というわけでnginxインストールしてみたらすげーさらっとできた。
$ sudo apt-get install -y nginx
でインストールして、
以下のような設定ファイルを食わせるだけ。
server {
listen 80;
server_name localhost;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_max_temp_file_size 0;
location /dev/gara/socket.io {
proxy_pass http://192.168.56.101:8888/socket.io;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location /dev/gara {
proxy_pass http://192.168.56.101:8888/;
}
}らくだわー
あたらしくnodejsサービスを追加するので既存のApacheでやりたかったのですが、全部nginxに置き換えちゃいました。
Apacheで出来ることは問題なく動いているようなのでこれでいこうとおもいます。