2017-01-13 8 views
-1

node.js、JavaとPHPアプリケーションを同じサーバーと同じポート上で実行するには、実行しようとしていましたが、実行できませんでした。同じサーバーと同じポート上でnode.js、JavaとPHPアプリケーションを実行する方法

+0

apacheをリバースプロキシとして使用する –

+2

[リバースプロキシ](https://en.wikipedia.org/wiki/Reverse_proxy)。 –

+0

もっと広く、Do not Do This。 – chrylis

答えて

0

ロードディレクターとしてvarnish cacheを使用し、これらのサーバーごとに異なるバックエンドを設定することができます。その後、着信URLを解析して、適切なアプリケーションサーバーにリダイレクトすることができます。これらのアプリケーションサーバーはすべて同じマシン上で実行できます。ワニスは1つのポートでリッスンし、他のすべてのサービスは他のポートでリッスンします。これらのサービスを外部アクセスからもファイアウォールするのは簡単でしょう。

異なるマシンで各サービスを実行することも、すべて可能で簡単です。私たちは、ワニスは、非常に軽量、信頼性があるため、異なる環境でこのソリューションを何度も使ってきたし、良いオプションながら、行き過ぎすることができ、ApacheやnginxのようなWebサーバのオーバーヘッドを持っていません。

また、それが提供する堅牢なキャッシュの追加利益を得ます。ボーナス!

2

この前に何らかの種類のHTTPプロキシ層が必要です。通常はApache httpdまたはNGinxです。そこから、必要に応じて異なるアプリケーションに移動するための異なるパスを設定できます。

設定ディレクティブを使用しているソリューションによって大幅に異なる場合がありますが、PHPに通過し、/node/javaは完全にどこかに行きながら、ノードを通過する/持つことができます。ただ、彼らはすべて一緒にきれいに再生することができたり、書き換え醜いURLの多くを行う必要があるでしょうので、あなたのサブコンポーネントは競合しないパスを使用していることを確認してください。

関連する問題