nginx を使用して 1 つのサーバーに複数のフロントエンド プロジェクトをデプロイする 3 つの方法をまとめました。
始める前に、nginxインストールのデフォルト設定ファイルを見てみましょう: /etc/nginx/nginx.confファイル 図からわかるように、 前置きはここまでにして、多くの企業がオンラインで使用している最も一般的な方法についてお話ししましょう。 ドメイン名ベースの構成ドメイン名の設定に基づいて、まずドメイン名の解決が設定されていることが前提となります。たとえば、www.fly.com というドメイン名を購入したとします。 次に、バックグラウンドで 2 つの第 2 レベル ドメイン名 (a.fly.com と b.fly.com) を構成しました。 設定ファイルは次のとおりです。 a.fly.com の設定ファイルを設定します。 vim /usr/nginx/modules/a.conf サーバー{ 聞く 80; サーバー名 a.fly.com; 位置 / { ルート /data/web-a/dist; インデックス index.html; } } b.fly.com の設定ファイルを設定します。 vim /usr/nginx/modules/b.conf サーバー{ 聞く 80; サーバー名 b.fly.com; 位置 / { ルート /data/web-b/dist; インデックス index.html; } } この方法の利点は、ホストがポート 80 を開くだけで済むことです。その後、第 2 レベルのドメイン名に直接アクセスすることでアクセスできるようになります。 ポートベースの構成設定ファイルは次のとおりです。 a.fly.com の設定ファイルを設定します。 vim /usr/nginx/modules/a.conf サーバー{ 8000を聴く; 位置 / { ルート /data/web-a/dist; インデックス index.html; } } # nginx ポート 80 の設定 (セカンダリドメイン名 a をリッスン) サーバー{ 聞く 80; サーバー名 a.fly.com; 位置 / { proxy_pass http://localhost:8000; #転送} } b.fly.com の設定ファイルを設定します。 vim /usr/nginx/modules/b.conf サーバー{ 8001を聴く; 位置 / { ルート /data/web-b/dist; インデックス index.html; } } # nginx ポート 80 の設定 (b セカンダリドメイン名をリッスン) サーバー{ 聞く 80; サーバー名 b.fly.com; 位置 / { proxy_pass http://localhost:8001; #転送} } ご覧のとおり、この方法では合計 4 台のサーバーが起動し、構成は最初の方法よりもはるかに複雑になるため、お勧めできません。 場所の設定に基づいて設定ファイルは次のとおりです。 a.fly.com の設定ファイルを設定します。 vim /usr/nginx/modules/ab.conf サーバー{ 聞く 80; 位置 / { ルート /data/web-a/dist; インデックス index.html; } 場所 /web-b { エイリアス /data/web-b/dist; インデックス index.html; } } 注: このように構成すると、場所/ディレクトリがルートになり、その他はエイリアスを使用する必要があります。 ご覧のとおり、この方法の利点は、サーバーが 1 つだけであり、セカンダリ ドメイン名を構成する必要がないことです。 React の設定については、https://blog.csdn.net/mollerlala/article/details/96427751 を参照してください。 vue の設定については、https://blog.csdn.net/weixin_33868027/article/details/92139392 を参照してください。 nginx で複数のフロントエンド プロジェクトをデプロイするいくつかの方法についての記事はこれで終わりです。nginx で複数のフロントエンド プロジェクトをデプロイする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQL の最適化: 高品質の SQL 文を書く方法
この記事では、次のように、誰にでも共有できる左右幅固定のミドルアダプティブ HTML レイアウトソリ...
イベントとは、クリック、マウスオーバー、ページの読み込み後にトリガーされる読み込みイベントなど、ユー...
この記事の例では、検証コードのランダム生成を実現するためのJSの具体的なコードを参考までに共有してい...
1. 対応するNode.jsパッケージを見つけます。https://nodejs.org/downl...
目次1. vue-video-playerをインストールする2. vue-video-playerを...
プロセスで使用されていて、誤って削除されたファイルがある場合、それらを回復することができます。プロセ...
1. scale() メソッドズームとは「縮小」と「拡大」を意味します。 CSS3 では、scal...
ページを作成するときに、記述した CSS スタイルが有効にならないことがあります。この現象にはさまざ...
目次バインディングクラスインラインスタイルのバインディングバインディングクラス方法1:オブジェクト構...
Vue - シャトルボックス機能を実装します。効果図は次のようになります。 CS 。移行{ ディスプ...
多くの場合、画像を表示する<a>タグのスタイルに遭遇しますが、タグ内にテキストがあり、そ...
序文この記事では、MySQL 8.0 の新機能を使用して再帰クエリを実装します。詳細なサンプル コー...
vue-routerには2つのモードがありますハッシュモード履歴モード1. シングルページアプリケー...
1. インストールパッケージをダウンロードする- お使いのコンピュータシステムに応じて適切なバージョ...
目次序文1. これを使用してデータ内のデータを読み取るプロセス2. Dep.target はいつ存在...