1. モジュールのインストール
nginx サードパーティ モジュールのインストール方法はここでは省略します。
設定パラメータ
./configure --prefix=/usr/local/nginx-1.4.1 --with-http_stub_status_module \ --add-module=../ngx_http_log_request_speed
2.命令log_request_speed
2.1 log_request_speed_filter
構文:
log_request_speed_filter [on|off]
設定セクション:n/a
context:location 、server、http
モジュールを有効または無効にする
2.2 log_request_speed_filter_timeout
構文:
log_request_speed_filter_timeout [num sec]
デフォルト: 5 秒
構成セクション: location、server、http
これは実際のタイムアウトではありませんが、リクエストがここで指定された時間を超えると、nginx エラー ログに記録されることを意味します。リクエストが 5 未満の場合、デフォルト値は 5000 マイクロ秒 (5 秒) です。秒を超えると、このリクエストはログに記録されませんが、5 秒を超えると、リクエストは nginx エラー ログに記録されます
#3. 使用例3.1 nginx 設定
http{ log_request_speed_filter on; log_request_speed_filter_timeout 3; ... }エラー ログに記録される遅いリクエストは次のとおりです
cd /usr/local/nginx-1.4.1/logs
wget http://wiki.nginx.org/images/a/a8/log_analyzer.tar.gz
tar -xzvf log_analyzer.tar.gz
cd request_speed_log_analyzer
# cat ../error.log | grep 'process request'| ./analyzer.pl -r
post /wp-admin/admin-ajax.php http/1.1 --- avg ms: 1182, value count: 2
get /shmb/1145.html http/1.1 --- avg ms: 2976, value count: 1 <--- the winner
Fromログを見ると、ここには 2 つの遅いリクエストがあることがわかりました。最も遅いリクエストは /shmb/1145.html で、これも「勝者」とマークされています、作者、あなたの勝ちです。とてもユーモラスです。
# ./analyzer.pl -h
- -h : このヘルプ メッセージ #ヘルプ メッセージの表示
- -u : 上流でグループ化 # を押す上流のグループ化
- -o : ホストごとにグループ化 #ホストごとにグループ化
- #-r : リクエストごとにグループ化 #リクエストごとにグループ化、これをお勧めします
現在、作成者は 0.6.35 と 0.7.64 でのみテストしており、それが可能であることは保証しません。他の環境でも使用されています。現在のテストバージョンは 1.4.1 で、現在は通常に使用しています。使用する前にテストしてください。
nginx は Web サイトの応答コンテンツ (ngx_http_sub_module) を置き換えます ngx_http_sub_module モジュールは、Web サイトの応答コンテンツの文字列を変更するフィルターです。応答内容 'すべてを 'このサイト' に置き換えます。このモジュールは nginx に組み込まれていますが、デフォルトではインストールされません。インストールするには、構成パラメーターを追加する必要があります: --with-http_sub_module
1 . ディレクティブ
構文: sub_filter string replacement;
デフォルト値: —
設定では、説明文字列を使用して説明文字列を置き換える必要があります。置換される文字列。置換は新しい文字列であり、変数を含めることができます。
構文:
sub_filter_last_modified on | off;
デフォルト値: sub_filter_last_modified off;設定セクション: http、server、location
このコマンドは nginx 1.5.1 で追加されました。このコマンドにはありません。 .
これにより、置換中に元の応答の「最終変更」ヘッダー フィールドを保存して、応答のキャッシュを容易にすることができます。
デフォルトでは、ヘッダー フィールドは応答の内容として削除されます。処理中に変更されました。
構文:
sub_filter_once on | off;
デフォルト値: sub_filter_once on;構成セクション: http、server、location
文字列を 1 回または複数回置換します。デフォルトは 1 回置換です。たとえば、応答コンテンツの jb51 を置き換えたい場合、このサイトでは、複数の jb51 が表示される場合、最初の jb51 のみが置き換えられます。オフの場合、すべての jb51 が置き換えられます。
Syntax:
sub_filter_types mime-type ...;
デフォルト値: sub_filter_types text/html;設定セクション: http、server、location
置換する必要がある MIME タイプを指定します。デフォルトは「text/html」です。* として指定した場合、次にすべて
2. nginx 置換文字列インスタンス
2.1 構成server {
listen 80;
server_name www.jb51.net;
root /data/site/www.jb51.net;
location / {
sub_filter jb51 '本站';
sub_filter_types text/html;
sub_filter_once on;
}
}
内容は次のとおりです# cat /data/site/www.jb51.net/2013/10/20131001_sub1.html
welcome to jb51!
jb51 team!
結果へのアクセス
# curl www.jb51.net/2013/10/20131001_sub1.html
welcome to 本站! jb51 team!
置換では大文字と小文字が区別されず、jb51 は 1 回だけ置換されることがわかります。 sub_filter_once を on から off に変更してみました。
location / { sub_filter jb51 '本站'; sub_filter_once off; }
その後、test
# curl www.jb51.net/2013/10/20131001_sub1.html
welcome to 本站! 本站 team!
jb51 が置き換えられたことがわかります。
たとえば、 の後に js を追加する場合、構成は次のようになります。次のように:
location / { sub_filter </head> '</head><script language="javascript" src="$script"></script>'; sub_filter_once on; }
以上が遅い応答リクエストを記録して分析し、Web サイトの応答コンテンツを置き換えるように Nginx を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Nginxは2002年に開始され、C10Kの問題を解決するためにIgorsysoevによって開発されました。 1.Nginxは、高性能の非同期アーキテクチャであり、高い並行性に適した高性能Webサーバーです。 2。システムのパフォーマンスと信頼性を向上させるために、リバースプロキシ、ロードバランス、キャッシュなどの高度な機能を提供します。 3。最適化手法には、HTTP/2とセキュリティ構成を使用した、ワーカープロセスの数の調整、GZIP圧縮の有効化が含まれます。

NginxとApacheの主なアーキテクチャの違いは、Nginxがイベント駆動型の非同期非ブロッキングモデルを採用し、Apacheはプロセスまたはスレッドモデルを使用することです。 1)nginxは、静的な内容と逆プロキシに適したイベントループとI/O多重化メカニズムを介して、高電流接続を効率的に処理します。 2)Apacheは、非常に安定しているがリソース消費量が高いマルチプロセスまたはマルチスレッドモデルを採用しており、リッチモジュールの拡張が必要なシナリオに適しています。

Nginxは、高い同時コンテンツと静的コンテンツの処理に適していますが、Apacheは複雑な構成と動的コンテンツに適しています。 1。NGINXは、交通量の多いシナリオに適した同時接続を効率的に処理しますが、動的コンテンツを処理するときは追加の構成が必要です。 2。Apacheは、複雑なニーズに適したリッチモジュールと柔軟な構成を提供しますが、並行性のパフォーマンスが低いです。

NginxとApacheにはそれぞれ独自の利点と欠点があり、選択は特定のニーズに基づいている必要があります。 1.Nginxは、非同期の非ブロッキングアーキテクチャのため、高い並行性シナリオに適しています。 2。Apacheは、モジュラー設計のため、複雑な構成を必要とする低変動シナリオに適しています。

Nginxunitは、複数のプログラミング言語をサポートし、動的構成、ゼロダウンタイム更新、組み込みのロードバランシングなどの機能を提供するオープンソースアプリケーションサーバーです。 1。動的構成:再起動せずに構成を変更できます。 2。多言語サポート:Python、Go、Java、PHPなどと互換性があります。 4。ビルトインロードバランシング:リクエストは、複数のアプリケーションインスタンスに配布できます。

nginxunitは、多言語プロジェクトや動的な構成要件に適した、apachetomcat、gunicorn、node.jsビルトインHTTPサーバーよりも優れています。 1)複数のプログラミング言語をサポートします。2)動的な構成リロード、3)高いスケーラビリティと信頼性を必要とするプロジェクトに適した組み込みの負荷分散機能を提供します。

Nginxunitは、モジュラーアーキテクチャと動的な再構成機能により、アプリケーションのパフォーマンスと管理性を向上させます。 1)モジュラー設計には、マスタープロセス、ルーター、アプリケーションプロセスが含まれ、効率的な管理と拡張をサポートします。 2)動的再構成により、CI/CD環境に適した、実行時に構成をシームレスに更新できます。 3)多言語サポートは、言語ランタイムの動的なロードを通じて実装され、開発の柔軟性が向上します。 4)イベント駆動型モデルと非同期I/Oによって高性能が達成され、高い並行性の下でも効率的なままです。 5)申請プロセスを分離し、アプリケーション間の相互の影響を減らすことにより、セキュリティが改善されます。

nginxunitを使用して、アプリケーションを複数の言語で展開および管理できます。 1)nginxunitをインストールします。 2)PythonやPHPなどのさまざまなタイプのアプリケーションを実行するように構成します。 3)アプリケーション管理に動的構成関数を使用します。これらの手順を通じて、アプリケーションを効率的に展開および管理し、プロジェクトの効率を向上させることができます。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

SublimeText3 中国語版
中国語版、とても使いやすい

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ホットトピック









