LinuxサーバにおけるNginxとApacheの共存の実装方法の分析

LinuxサーバにおけるNginxとApacheの共存の実装方法の分析

この記事では、Linux サーバー上で Nginx と Apache の共存を実装する方法について説明します。ご参考までに、詳細は以下の通りです。

同時に同じポートをリッスンする 2 つのプログラムが存在することはできません。そこで私たちは考え方を変え、nginx で実行されている一部の Web サイトと Apache で実行されている一部の Web サイトが同じサーバー上に共存するという問題を解決しました。

解決:

nginx をプロキシ サーバーおよび Web サーバーとして使用します。nginx はポート 80 を listen し、Apache は 80 以外のポートを listen します。ここではポート 8080 を使用します。

解決:

  • Linux環境がセットアップされると、NginxとApacheが次々にインストールされました。デフォルトのポートは80なので、
  • 一般的なクライアント リクエストのデフォルトのサーバー ポートは 80 なので、Nginx は静的ページ ポート: 80 に設定され、Apache はポート: 8080 に設定されます (httpd.conf ファイルで Listen: 8080 を変更します)。

Apache の Web サイト:

nginx.confに追加

サーバー{
   聞く 80;
   サーバー名 www.one.ityangs.cn one.ityangs.cn;
位置 / {
   プロキシパス http://127.0.0.1:8080;
   proxy_redirect オフ;
   proxy_set_header ホスト $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   }
}

httpd.confに追加する

<仮想ホスト *:8080>
サーバー名 www.one.ityangs.cn
サーバーエイリアス www.one.ityangs.cn one.ityangs.cn
ドキュメントルート /www/one
ディレクトリインデックス index.php index.html
<ディレクトリ /www/one>
オプション +Includes +FollowSymLinks -Indexes
すべて上書きを許可
注文拒否、許可
全員から許可
</ディレクトリ>
</仮想ホスト>

Nginx の Web サイト:

nginx.confに追加

 サーバー{
  聞く 80;
  サーバー名 two.ityangs.cn www.two.ityangs.cn;
  ルート /www/two;
  位置 /{
   インデックス index.html index.htm index.php;
    if (!-e $request_filename) {
    ^(.*)$ /index.php?s=$1 を最後に書き換えます。
    壊す;
   }
   エラーページ 404 /var/www/html/404.html;
  }
  場所 ~ \.php(.*)$ {
    127.0.0.1:9000; をデフォルトとして設定します。
    fastcgi_index インデックス.php;
    fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
    fastcgi_params を含めます。
  }
}

この記事が Linux サーバーの保守に役立つことを願っています。

以下もご興味があるかもしれません:
  • Linux で Apache を使用してファイル サーバーを構築する手順
  • Linux+ApacheサーバURLの大文字と小文字の区別の問題を解決する
  • Linux Apache Web サーバー セキュリティに関する 8 つのヒント
  • Python の Django プロジェクトを Linux の Apache サーバーにデプロイする
  • Linux システムで Apache サーバーのエラー ログを表示する
  • Linux インストール Apache サーバー構成プロセス

<<:  独自のネイティブ JavaScript ルーターを作成する方法

>>:  MySQL SQL ステートメント分析とクエリ最適化の詳細な説明

推薦する

MyCat を使用して Linux で MySQL マスター/スレーブの読み取り/書き込み分離を実装する方法

目次Linux - MyCat を使用して MySQL マスター スレーブの読み取り書き込み分離を実...

webpackの遅延読み込みとプリロードの詳細な説明

目次通常の読み込み遅延読み込みプリロードプリロードを使用しないプリロードの使用要約する通常の読み込み...

JS で配列の重複排除を実装する 7 つの方法

目次1. Set()+Array.from() を使用する2. 2層ループ+アレイ接合方式の使用3....

Vue検証コードコンポーネントの使い方の詳しい説明

この記事の例では、vue検証コードコンポーネントで使用される具体的な実装コードを参考までに共有してい...

dockerコンテナがIP経由でホストマシンにアクセスできない問題を解決する方法の詳細な説明

問題の起源docker を使用する場合、残念ながら docker コンテナ内のホストのポート 80 ...

Linux 仮想ホストで SourceGuardian (sg11) 暗号化コンポーネントを有効にする詳細な手順

注: sg11 弊社では Linux システム仮想ホストのセルフインストールのみサポートしております...

div が隠しテキストを超え、div 部分の向こうの CSS コードを隠します

隠れる前に:隠れた後: CS: ...コードをコピーコードは次のとおりです。オーバーフロー:非表示;...

25 個の CSS フレームワーク、ツール、ソフトウェア、テンプレートを共有

スプライトカウダウンロード CSS リントダウンロード プレフィックスダウンロード 1140px C...

よくある MySQL テーブル設計エラーの概要

目次間違い1: データの列が多すぎる誤解2: 共同クエリが多すぎる誤解3: ENUMの代わりにSET...

MySQLで時間別データと最後の時間別データの差をクエリするアイデアの詳細な説明

1. はじめに要件は、特定の時間範囲内で、1 時間ごとのデータと前の 1 時間ごとのデータの差と比率...

elementui での el-cascader カスケードセレクタの実践

目次1. 効果2. メインコード1. 効果機能: インターフェイスから取得したデータを使用してオプシ...

CSS はモバイル デバイスで水平スクロール ナビゲーション バーを実装します (PC デバイスにも適用可能)

関数の起源最近、水平スクロール バーを必要とする H5 に取り組んでいました。いくつかのドキュメント...

間違った MySQL コマンドをキャンセルしたい場合はどうすればいいですか?

間違った mysql コマンドを入力したのでキャンセルしたいです。どうすればいいですか? ctrl ...

Swiper.jsプラグインを使用すると、カルーセル画像を非常に簡単に実装できます。

Swiper は、携帯電話やタブレットなどのモバイル端末向けに設計された、純粋な JavaScri...

Ember.js と Vue.js の詳細な比較

目次概要フレームワークを選択する理由は何ですか? js のエンバーEmber.js と Vue.js...