apache 2からnginxウェブサーバへ移動する
最近仕事で私たちのdev、ステージングと生産のWebサーバをapache 2からnginxに移動しなければなりませんでした.この動きの理由は、当社の残りの部分では、すべてのバックエンドサービスのNGinxを使用しているが、いくつかの理由でWebサイトが設定されたときにコンサルタントはApache 2を設定しています.これが経営上の問題となった.この記事では、プロセスを通してステップバイステップに行きます.私は、すべてのスクリーンショットのために放浪箱を使用しています、しかし、私がしたステップは実際のサーバーのために同じでした.
私のテストサーバのために
このサーバーにはWordPress 5.2.4が走っているWordPressサイトがあります.NGNXとPHP 7.3で動くWordPressサイトを見ることができるならば、我々は我々のゴールを達成しました.ああ、私たちの束があります
かなりまっすぐ前方.更新をチェックして起動します.
NGANX(Apacheと同じように)が設定されているデフォルトのウェブサイトがあります.設定を見ることができます.
< div >
オンラインで
<> P >
クラスをハイライト表示する
< tag > nginxサービスを開始する前に、すぐに設定をテストしましょう.br/>
<> P >
クラスをハイライト表示する
すべてがうまくいけば、少し書きましょう
<> P >
クラスをハイライト表示する
<高橋>
<> P >
クラスをハイライト表示する
< P >新しい設定をテストするbr/>
<> P >
クラスをハイライト表示する
を返します.
今私たちは
最初のオフ、Ubuntuはどこに取得するか分からない
<> P >
クラスをハイライト表示する
<インストール>
<> P >
クラスをハイライト表示する
すべてのエクステンションがインストールされたら、その時刻を
< div class ="LagagCount - gig - Link - tag "
"スクリプトのID "https://gist.github.com/davinderpalrehal/dd8892255905f3b7cc5db4d38f01cf2d.js//>
< div >
< tt >構文エラーがないことを確認するための設定をテストします.br/>
<> P >
クラスをハイライト表示する
<高橋潤子>
うまくいけば、それはあなたの誤りを解決しました.さあ変えましょう
<> P >
クラスをハイライト表示する
を再開する
<> P >
クラスをハイライト表示する
そして、あなたは
私はいくつかの私のアプリケーションの設定を保存するような
私たちが触れたファイル
<> P >
クラスをハイライト表示する
通常は< br/>形式です
<> P >
クラスをハイライト表示する
他のenv変数を追加してください.一度あなたのハッピーテストの設定と再起動
< P >
最後の5つの値に注意を払います.p >
そして、それは、ちょうど最終的なテストをするために関連フォルダにすべてのファイルを動かします.準備ができたら、あなたは
<> P >
クラスをハイライト表示する
ポート番号を変更する
<高橋>p >
サーバ
私のテストサーバのために
vagrant
and ubuntu/bionic64
. このサーバーではapache2.4
, php7.2
and mysql5.7
基礎LAMP
スタック.私はどのように移動するLEMP
nginxでapacheを置き換えるスタック.このサーバーにはWordPress 5.2.4が走っているWordPressサイトがあります.NGNXとPHP 7.3で動くWordPressサイトを見ることができるならば、我々は我々のゴールを達成しました.ああ、私たちの束があります
envvars
nginxのインストールに移さなければならないApache 2のインスタンスを設定します.nginxのインストール
かなりまっすぐ前方.更新をチェックして起動します.
sudo apt update
sudo apt upgrade
実際にnginxをインストールします.sudo apt install nginx
NginXは現在インストールされていますが、実行されていません.Apache 2はすでにインストールされており、システム上で構成されています.80
これは、衝突を避けるために、NGANXを別のポートに走らせることで、すべてがうまく動いていることをテストするべきです.ポートを選択8080
.ポート8080でnginxを設定します
NGANX(Apacheと同じように)が設定されているデフォルトのウェブサイトがあります.設定を見ることができます.
sudo vim /etc/nginx/sites-available/default
これはファイルを開くべきです.< div >
オンラインで
22
and 23
我々は変更するつもりです80
to 8080
.<> P >
クラスをハイライト表示する
listen 8080 default_server;
listen [::]:8080 default_server;
< div >< tag > nginxサービスを開始する前に、すぐに設定をテストしましょう.br/>
<> P >
クラスをハイライト表示する
sudo nginx -t
< div >すべてがうまくいけば、少し書きましょう
HTML
ちょうど私たちは、サーバーが知っているようになるページ.ライン41
サーバのルートを示します.私はApacheと同じディレクトリを使用しないようにサーバールートを変更しましたbr/><> P >
クラスをハイライト表示する
root /srv/www/html;
< div ><高橋>
index.html
ファイル.サーバを起動できます.br/><> P >
クラスをハイライト表示する
sudo service nginx start
< div >< P >新しい設定をテストするbr/>
<> P >
クラスをハイライト表示する
curl http://localhost:8080
< div >を返します.
HTML
作成したファイル.インストールを続けるPHP
.PHPのインストール
今私たちは
PHP7.2
システムにインストールされていたので、全体として恐怖のビットがあったのでPHP7.2
and Nginx
コンフィグに移動しますPHP7.3
.最初のオフ、Ubuntuはどこに取得するか分からない
PHP7.3
したがって、リポジトリを追加する必要がありますbr/><> P >
クラスをハイライト表示する
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt upgrade
< div ><インストール>
PHP7.3
といくつかの拡張.これらは私が必要とする拡張モジュールです.必要に応じて拡張モジュールを追加したり削除したりできます.br/><> P >
クラスをハイライト表示する
sudo apt install php7.3
sudo apt install php7.3-cli php7.3-fpm php7.3-pdo php7.3-mysql php7.3-zip php7.3-mbstring php7.3-curl php7.3-xml php7.3-bcmath php7.3-json
< div >すべてのエクステンションがインストールされたら、その時刻を
Nginx
私たちが使用しているウェブサイトはPHP
. すべてのコメントが取り除かれ、コメントが変更された行にのみコメントがあります.p >< div class ="LagagCount - gig - Link - tag "
"スクリプトのID "https://gist.github.com/davinderpalrehal/dd8892255905f3b7cc5db4d38f01cf2d.js//>
< div >
< tt >構文エラーがないことを確認するための設定をテストします.br/>
<> P >
クラスをハイライト表示する
sudo nginx -t
< div ><高橋潤子>
/srv/config/default.nginx.conf
. 今のところ、空白のファイルを追加するだけで、後で何をするかを説明します.p >うまくいけば、それはあなたの誤りを解決しました.さあ変えましょう
index.html
ファイルindex.php
そして、いくつかの基本PHP
物事が動作するかどうかを確認するコード.また、index.php
ファイル.私は行きたいですbr/><> P >
クラスをハイライト表示する
sudo chmod 755 index.php
< div >を再開する
Nginx
サーバ< br/><> P >
クラスをハイライト表示する
sudo service nginx restart
< div >そして、あなたは
PHP
ファイルを書きました.印刷したphpinfo()
設定を確実にする機能p >サーバenv変数
私はいくつかの私のアプリケーションの設定を保存するような
$_SERVER
超大域これは便利なときにあなたの間のアプリケーションを移動来るdev
, stage
and prod
サーバーとDBのパスワードやAPIのエンドポイントを変更し続ける必要はありませんp >私たちが触れたファイル
/srv/config/default.nginx.conf
, 次のコード行を追加しますbr/><> P >
クラスをハイライト表示する
fastcgi_param APP_ENV dev;
fastcgi_param APP_ENDPOINT https://dev.server.com;
fastcgi_param DB_HOST localhost;
fastcgi_param DB_USER root;
fastcgi_param DB_PASS password;
< div >通常は< br/>形式です
<> P >
クラスをハイライト表示する
fastcgi_param {VAR_NAME} {VAR_VALUE};
< div >他のenv変数を追加してください.一度あなたのハッピーテストの設定と再起動
Nginx
. あなたの新しい変数をphpinfo()
関数は以下のように出力される.p >< P >
最後の5つの値に注意を払います.p >
そして、それは、ちょうど最終的なテストをするために関連フォルダにすべてのファイルを動かします.準備ができたら、あなたは
Apache
サービスbr/><> P >
クラスをハイライト表示する
sudo service apache2 stop
< div >ポート番号を変更する
8080
にNginx
コンフィグ80
再開Nginx
, これで終わりです.p ><高橋>p >
Reference
この問題について(apache 2からnginxウェブサーバへ移動する), 我々は、より多くの情報をここで見つけました https://dev.to/davinderpalrehal/moving-from-apache2-to-nginx-webserver-2n6aテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol