この記事では、yum でインストールされた nginx をスムーズにアップグレードする方法を紹介します。元の nginx がコンパイルされてインストールされている場合は、アップグレード時に実際の構成に注意する必要があります。
(推奨チュートリアル: nginx チュートリアル)
1. yum によってインストールされた nginx のバージョンと既存の構成を確認します
最初に以前の構成を記録します
nginx -V
nginx version: nginx/1.12.2 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) built with OpenSSL 1.0.2k-fips 26 Jan 2017 TLS SNI support enabled configure arguments: --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_auth_request_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-debug --with-cc-opt=’-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic’ --with-ld-opt=’-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-E’ --add-module=/root/nginx-rtmp-module
configure 引数は後で使用します: 以下は nginx
2 の既存の構成です。必要な新しいバージョンの nginx ソース コード パッケージ
wget http://nginx.org/download/nginx-1.14.2.tar.gz
3 をダウンロードします。バックアップします。元の nginx の重要なファイル (安全のため)
mv /usr/sbin/nginx /usr/sbin/nginx.back cp -rf /etc/nginx /etc/nginx.back
4.コンパイル
先ほど見つけた構成を採用します。追加する新しいモジュールがある場合は、それらを追加することもできます
tar xf nginx-1.14.2.tar.gz cd nginx-1.14.2
./configure --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_auth_request_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-debug --with-cc-opt=’-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic’ --with-ld-opt=’-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-E’ --add-module=/root/nginx-rtmp-module
5. make
nginx が既に存在するため、make install を実行できないと、以前の設定ファイルと内容が上書きされてしまいます
make cp objs/nginx /usr/sbin/nginx
6. 成功したかどうかを確認します
/usr/sbin/nginx -t
7. スムーズな切り替え
注: 実際にコンパイルされた設定内容に基づいて、pid ファイルの場所を見つけてください。この記事の元の nginx は yum によってインストールされているため、/var/run の下にあります。
実際には、make update を使用して nginx-1.14.2 ディレクトリでアップグレードすることもできます。問題を回避するために、手動で処理することをお勧めします
kill -USR2 `cat /var/run/nginx.pid` 将旧版本Nginx的主进程将重命名为nginx.pid.oldbin,并执行新版本的Nginx可执行程序,启动新的主进程和新的工作进程,再次生成新的nginx.pid文件 kill -WINCH `cat /var/run/nginx.pid.oldbin` 平缓停止worker process(此步骤可省略) kill -QUIT `cat /var/run/nginx.pid.oldbin` 平缓停止旧的Nginx服务进程
8. View
記事の補足:
Nginx でサポートされているシグナル
Nginx アクティビティの制御に使用できます
TERM、 INT - クイックシャットダウン
QUIT スムーズなシャットダウン
##HUP スムーズな再起動、設定ファイルのリロード#USR1 ログファイルを再度開く
##USR2 実行可能プログラムのスムーズなアップグレードWINCH Smooth Close ワーカー プロセス以上がビジネスに影響を与えずにnginxのバージョンをアップグレードする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Nginxunitは、動的な構成と多言語サポートを使用して、アプリケーションの展開を簡素化します。 1)動的構成は、サーバーを再起動せずに変更できます。 2)Python、PHP、Javaなどの複数のプログラミング言語をサポートしています。 3)非同期非ブロッキングI/Oモデルを採用して、高い並行性処理パフォーマンスを改善します。

Nginxは最初にC10Kの問題を解決し、現在、ロードバランス、リバースプロキシ、APIゲートウェイを処理するオールラウンドに発展しています。 1)イベント駆動型のアーキテクチャや非ブロッキングアーキテクチャで有名であり、高い並行性に適しています。 2)Nginxは、IMAP/POP3をサポートするHTTPおよびリバースプロキシサーバーとして使用できます。 3)その作業原則は、イベント駆動型および非同期のI/Oモデルに基づいており、パフォーマンスが向上しています。 4)基本的な使用には、仮想ホストと負荷分散の構成が含まれ、高度な使用には複雑な負荷分散とキャッシュ戦略が含まれます。 5)一般的なエラーには、構成の構文エラーと許可の問題が含まれます。また、デバッグスキルには、nginx-Tコマンドとstub_statusモジュールの使用が含まれます。 6)パフォーマンスの最適化の提案には、GZIP圧縮の使用、ワーカーパラメーターの調整、および

nginxの一般的なエラーの診断とソリューションには、次のものが含まれます。1。ログファイルの表示、2。構成ファイルの調整、3。パフォーマンスを最適化します。ログを分析し、タイムアウト設定を調整し、キャッシュとロードバランスの最適化により、404、502、504などのエラーを効果的に解決して、ウェブサイトの安定性とパフォーマンスを向上させることができます。

NGINXUnitischosenfordeployingapplicationsduetoitsflexibility,easeofuse,andabilitytohandledynamicapplications.1)ItsupportsmultipleprogramminglanguageslikePython,PHP,Node.js,andJava.2)Itallowsdynamicreconfigurationwithoutdowntime.3)ItusesJSONforconfigu

Nginxは、ファイルを提供し、トラフィックを管理するために使用できます。 1)nginxサービスの構成静的ファイル:リスニングポートとファイルディレクトリを定義します。 2)ロードバランシングとトラフィック管理を実装します。上流モジュールとキャッシュポリシーを使用して、パフォーマンスを最適化します。

Nginxは、高い並行性と静的コンテンツの処理に適していますが、Apacheは動的な内容と複雑なURL書き換えに適しています。 1.Nginxは、高い並行性に適したイベント駆動型モデルを採用しています。 2。Apacheは、動的なコンテンツに適したプロセスモデルまたはスレッドモデルを使用します。 3。NGINX構成は簡単ですが、Apache構成は複雑ですが、より柔軟です。

NginxとApacheにはそれぞれ独自の利点があり、選択は特定のニーズに依存します。 1.NGINXは、単純な展開を備えた高い並行性に適しており、構成の例には仮想ホストとリバースプロキシが含まれます。 2。Apacheは複雑な構成に適しており、展開も同様に簡単です。構成の例には、仮想ホストとURL書き換えが含まれます。

Nginxunitの目的は、Webアプリケーションの展開と管理を簡素化することです。その利点には、次のものが含まれます。1)Python、PHP、Go、Java、node.jsなどの複数のプログラミング言語をサポートします。 2)動的構成と自動リロード関数を提供します。 3)統一されたAPIを介してアプリケーションライフサイクルを管理します。 4)非同期I/Oモデルを採用して、高い並行性と負荷分散をサポートします。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

WebStorm Mac版
便利なJavaScript開発ツール

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター
