私は Linode VPS を持っており、現在 lighttpd を実行して PHP Web サイトを提供し、ポート 80 でリッスンしています。
また、ポート 81 でリッスンし、websockets と HTTP を使用してクライアントと対話する Node.js も実行しています。
このサーバーを指すようにしたいドメインがいくつかあります。理想的には、PHP サイトをホストするドメインがすべて同じ lighttpd サーバーと通信するようにし、node.js を使用するサイトがクライアントに知られていない状態で node.js がリッスンしているポートに何らかの方法でリダイレクトすることを望みます (たとえば、30x リダイレクトはありません)。 )。
example-php1.com:80 -> linodebox:80 lighttpd /var/www/example1
example-php2.com:80 -> linodebox:80 lighttpd /var/www/example2
example-node.com:80 -> linodebox:81 node.js
DNSエントリを設定するか、iptablesを調整することで、これを行う方法はありますか? lighttpd は node.js のプロキシである必要がありますか? Websockets 機能は、フォールバックなしで機能する必要があり、ノード以外のドメインにアクセスした場合 (例:example-php1.com:81
ノード アプリケーションが公開されないようにする必要があります)。
完璧なソリューションは、既存のアプリケーション コードを変更したり、ソフトウェア Web サーバー間のプロキシを必要としないと思いますが、間違っている可能性があります。