Node.js で socket.io 使ってウェブチャット作って遊ぶ! とかやってると、そのうち作ったアプリを自宅サーバとかで公開したくなるのが人の世の常というものですが。 とくに考えずに自宅サーバで作ったアプリを動かそうとすると、 「Node.js で作ったアプリをポート3000番で動かしてー、フロントサーバとして Apache か nginx を置けば良いやー」 って感じで上の図のような構成になると思いますー。が (そもそもイベントループが売りの Node.js のフロントサーバが Apache ってどうなの?ってのは置いといて。) ふと気づく。クライアントからの WebSocket が届いてねえ! はい、対応してないんですよね、Apache も nginx も、WebSocket のプロキシは。 仕方ないので無理矢理動かそうとすると、Node.js アプリが動いてるポートを開くこと
![WebSocket を通す ReverseProxy が欲しいの](https://cdn-ak-scissors.b.st-hatena.com/image/square/e9b44484a25d84549893705322918c0860724869/height=288;version=1;width=512/https%3A%2F%2Fwww.fraction.jp%2Flog%2F2011%2F03%2Fnodejs01.png)