nginx のフロントエンドとバックエンドに同じドメイン名を設定する方法

nginx のフロントエンドとバックエンドに同じドメイン名を設定する方法

この記事では、主にnginxのフロントエンドとバックエンドに同じドメイン名を設定する方法を紹介し、皆さんと共有します。詳細は次のとおりです。

上流 dfct {
#ip_ハッシュ;
 サーバー 121.41.19.236:8192;
}
 
サーバー{
 サーバー名 ct.aeert.com;
 
 位置 / {
  ルート /opt/web;
  try_files $uri $uri/ /index.html;
  error_page 405 =200 http://$host$request_uri;
 }
 
 場所 ^~/web/ {
  proxy_set_header ホスト $proxy_host;
# proxy_set_header ホスト $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  プロキシパス http://121.41.19.236:8192/;
 }
 
 
 listen 443 ssl; # Certbot によって管理されています
 ssl_certificate /etc/letsencrypt/live/ct.aeert.com/fullchain.pem; # Certbot によって管理されています
 ssl_certificate_key /etc/letsencrypt/live/ct.aeert.com/privkey.pem; # Certbot によって管理されます
 include /etc/letsencrypt/options-ssl-nginx.conf; # Certbot によって管理されます
 ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # Certbot によって管理されます
 
}
 
 
サーバー{
 $host = ct.aeert.comの場合{
  301 https://$host$request_uri を返します。
 } # Certbot によって管理されています
 
 
 聞く 80;
 サーバー名 ct.aeert.com;
 404 を返します。# Certbot によって管理されています
 
 
}

補足: nginx を使用してフロントエンドとバックエンドを分離したプロジェクトをデプロイする 3 つの方法

フロントエンドとバックエンドが分離されたプロジェクトの場合、フロントエンドとバックエンドは異なるドメイン名を使用することも、同じドメイン名を使用することもできます。

以下は、フロントエンドとバックエンドが同じドメイン名を使用する場合です。

1. フロントエンドはwww.xxx.comを使用し、バックエンドはapi.xxx.comを使用します。

サーバー{
サーバー名 www.xxx.com;

位置 / {
 ルート /tmp/dist;
 インデックス index.html;
 try_files $uri $uri/ /index.html;
  }
 }

サーバー{
サーバー名 api.xxx.com;
位置 / {
uwsgi_pass 127.0.0.1:8000;
/etc/nginx/uwsgi_params を含めます。
 }
}

2. フロントエンドはwww.xxx.comを使用し、バックエンドはwww.xxx.com/api/を使用します。

1. uwsgiがhttpを使用する場合は、次のように設定できます。

サーバー{
サーバー名 www.xxx.com;

位置 / {
 ルート /tmp/dist;
 インデックス index.html;
 try_files $uri $uri/ /index.html;
 }

場所 ^~ /api/ {
 プロキシパス http://127.0.0.1:8000/;
 }
}

2. uwsgiがソケット方式を使用する場合は、次のように設定する必要があります。

サーバー{
サーバー名 www.xxx.com;
位置 / {
 ルート /tmp/dist;
 インデックス index.html;
 try_files $uri $uri/ /index.html;
}

場所 ^~ /api/ {
 プロキシパス http://127.0.0.1:8080/;
 }
}
サーバー{
8080を聴く;
位置 / {
uwsgi_pass 127.0.0.1:8000;
/etc/nginx/uwsgi_params を含めます。
 }
}

nginx のフロントエンドとバックエンドに同じドメイン名を設定する方法についてはこれで終わりです。nginx のフロントエンドとバックエンドに同じドメイン名を設定する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • 異なるドメイン名への PC または携帯電話のアクセスを区別するように Nginx を構成する方法

<<:  CSS のみを使用して折りたたまれたヘッダー効果を作成する方法の例コード

>>:  TinyEditorはシンプルで使いやすいHTML WYSIWYGエディタです

推薦する

2018 年にリリースされる Apache Spark 2.4 の新機能は何ですか?

この記事は、2018 年 9 月 19 日に Adob​​e Systems Inc で開催された ...

Vue はタブ ラベルを実装します (ラベルが自動スクロールを超える)

作成されたタブラベルがページの表示領域を超えると、タブラベルの距離だけ自動的にスクロールされます。ま...

docker view container log コマンドの実装

なぜログを読む必要があるのでしょうか?たとえば、コンテナの起動に失敗したがプロンプトが表示されない場...

MySQLにおけるMTRの概念

MTR は Mini-Transaction の略です。名前が示すように、これは「最小のトランザクシ...

JS でオブジェクトを作成する 4 つの方法

目次1. リテラル値でオブジェクトを作成する2. 新しいキャラクターを使ってオブジェクトを作成する3...

Dockerはコンテナに入るためにルートを使用する

まずdockerコンテナを実行しますルートユーザーとしてコマンドを実行する sudo docker ...

MySQLの誤操作後にbinlog2sqlを使用して素早くロールバックする方法の詳細な説明

序文日常の仕事や勉強では、データベースを操作するときに「不注意」によるミスを犯すことは避けられません...

CSSは、マウスを線の上に置くと線全体の色を変える効果を実現します。

まとめ:以下のように、CSS で指定した行にマウスを置いたときに行全体の色を変更する方法を示します。...

html+cssレイアウトの3つの方法(ナチュラルレイアウト/フローレイアウト/ポジショニングレイアウト)

1. 自然なレイアウト<br />レイアウトは変更せずに自動的に左揃えになります。 2....

MySQL 検査スクリプト (必読)

以下のように表示されます。 #!/usr/bin/env python3.5 psutilをインポー...

HTML DOM入門_PowerNode Javaアカデミー

DOMとは何ですか? JavaScript を使用すると、HTML ドキュメント全体を再構築できます...

Vueにおけるキーの役割と原理の詳細な説明

目次1. 結論から始めましょう2. キーの役割2.1 例2.2 上記の例を修正する2.3 例を再度修...

MYSQL ログとバックアップおよび復元の問題の詳細な説明

この記事では、参考までにMYSQLログとバックアップとリストアについて紹介します。具体的な内容は以下...

MySQL 8.0.22 のインストールと設定方法のグラフィックチュートリアル

この記事ではMySQL 8.0.22のインストールと設定について記録します。具体的な内容は以下のとお...