ホームページ >運用・保守 >Nginx >nginxはさまざまなポート構成に耳を傾け、さまざまなプロジェクトにアクセスします

nginxはさまざまなポート構成に耳を傾け、さまざまなプロジェクトにアクセスします

James Robert Taylor
James Robert Taylorオリジナル
2025-03-05 15:22:19426ブラウズ

さまざまなプロジェクトにアクセスするためにさまざまなポートでリスニングする

nginx

これは完全に可能であり、Nginxを使用して単一のサーバーで複数のWebアプリケーションを管理するための一般的な慣行です。 Nginxの力は、逆プロキシおよびロードバランサーとして機能する柔軟性にあり、ポート番号を含むさまざまな基準に基づいてトラフィックを効率的にルーティングします。 効率が低下する複数のnginxインスタンスを実行する代わりに、Nginxの複数のポートで同時にリスニングする能力を活用し、さまざまなバックエンドアプリケーション(プロジェクト)に適切にリクエストを向けます。 その後、各プロジェクトは独自のディレクトリに存在し、懸念のきれいな分離を維持できます。 この構成は、各プロジェクトに一意のポートを割り当てることによりポートの競合を回避します。

単一のサーバー上の異なるポートから複数のプロジェクトを提供するようにnginxを構成するにはどうすればよいですか?

nginxを構成するには、異なるポートから複数のプロジェクトを提供するには、nginx構成内のファイルまたはnginx.confsites-available2つのプロジェクト「Projecta」と「ProjectB」の例の例は、それぞれポート8080と8081をリッスンします。 また、ディレクトリ内のバックエンドアプリケーション(Apache、Python、Node.jsサーバーなど)が適切なポート(必要に応じてポート80または別のポートなど)を実行してリスニングしていることを確認してください。これらの変更を行った後、

を使用して

を使用してnginxをリロードして構成をテストして、サービスを中断することなく変更を適用します。

<code class="nginx">server {
    listen 8080;
    server_name projectA.example.com; # Or an IP address if not using domain names

    root /var/www/projectA; # Path to projectA's root directory
    index index.html;

    location / {
        try_files $uri $uri/ /index.html;
    }
}

server {
    listen 8081;
    server_name projectB.example.com; # Or an IP address

    root /var/www/projectB; # Path to projectB's root directory
    index index.php;

    location / {
        try_files $uri $uri/ /index.php;
    }
}</code>
同じサーバー上のさまざまなプロジェクトの複数のNginx構成を管理するためのベストプラクティスは何ですか?
  • シンボリックリンクを使用します:メインのnginx構成ファイルを直接編集する代わりに、sites-availableおよびsites-enabledディレクトリ(多くのLinuxディストリビューションに共通)を使用します。 sites-availableで構成ファイルを作成し、それらにシンボリックリンクを作成して、それらをアクティブにします。これにより、管理とバージョンの制御が容易になります。sites-enabled
  • モジュラー構成:複雑な構成を、ディレクティブを使用して含まれるより小さな、管理可能なファイルに分類します。これにより、読みやすさと保守性が向上します。include
  • バージョンコントロール: nginx構成ファイルをGITなどのバージョン制御システムに保存して、変更を追跡し、必要に応じて以前のバージョンに戻すことができます。それら。
  • 定期的なバックアップ:>
  • 自動展開:
  • 自動化された展開:
  • 自動展開:
  • 自動化管理ツールの使用を検討することを検討してください。構成。

単一のnginxインスタンスを使用して、それぞれが一意のポートで聴くリクエストを処理することは可能ですか? 前の回答で実証されているように、単一のNginxインスタンスは、それぞれが一意のポートで聴く複数のプロジェクトへのリクエストを効率的に処理できます。これは、nginx構成ファイル内の複数の

ブロックを使用することで達成されます。各プロジェクトに固有の一意のポートとその他のディレクティブ(

server、およびロケーションブロックなど)を指定する独自のlistenディレクティブで定義されます。 このアプローチは、各プロジェクトの個別のnginxインスタンスを実行するよりもはるかに効率的でリソースに優しいです。 管理を集中化し、監視を簡素化します

以上がnginxはさまざまなポート構成に耳を傾け、さまざまなプロジェクトにアクセスしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:nginx監視ツール無料次の記事:なし