同一ドメインで複数サブディレクトリにNode.js環境を構築する

nodejs-reverse-proxy
  • URLをコピーしました!

Apacheリバースプロキシを利用して、同一ドメインでも複数サブディレクトリで実行可能なNode.js環境を構築し、本番、ステージング、開発環境を使い分け、それぞれの環境を起動する手順を紹介します。
本手順はUbuntu向けですが、他の環境でも応用可能です。

目次

リバースプロキシの設定

リバースプロキシは、WEBサーバーとクライアント(ユーザーのブラウザなど)の間に位置し、クライアントからのリクエストを受け取ってサーバーへ転送する中継役の仕組みです。
通常のプロキシはクライアントの代理としてサーバーへのリクエストを中継するのに対し、リバースプロキシはサーバーの代理としてクライアントへのレスポンスを中継します。

Apacheのリバースプロキシモジュールを有効化する

Apacheリバースプロキシモジュールを有効にするために、以下の手順を実行します。

リバースプロキシ設定ファイルを作成する

リバースプロキシの設定を /etc/apache2/mods-enabled/proxy.conf に記載します。
以下は設定ファイルの例です。

この設定は、your-domain.com でアクセスした場合、ルート(/)はポート 3000 で実行中の本番環境に、/stg/ はポート 3001 で実行中のステージング環境に、/dev/ はポート 3002 で実行中の開発環境にリダイレクトします。

Apacheを再起動する

設定ファイルを変更した後、Apache再起動して設定を有効にします。

Node.jsアプリケーションの起動

各環境でNode.jsアプリケーションを起動するため、各プロジェクトディレクトリで以下のコマンドを実行します。
例えば、本番環境の場合は以下のように行います。

ステージング環境と開発環境についても同様にアプリケーションを起動します。

これで、同一ドメインの複数サブディレクトリでNode.js環境が構築され、それぞれの環境にアクセスできるようになりました。
設定が正しく行われていることを確認し、必要に応じてポート番号やドメイン名を調整してください。

著:伊藤 康太
¥3,212 (2024/02/20 14:49時点 | Amazon調べ)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次