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
# ./analyzer.pl -h
現在、作成者は 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;
このコマンドは nginx 1.5.1 で追加されました。このコマンドにはありません。 .
これにより、置換中に元の応答の「最終変更」ヘッダー フィールドを保存して、応答のキャッシュを容易にすることができます。
デフォルトでは、ヘッダー フィールドは応答の内容として削除されます。処理中に変更されました。
構文:
sub_filter_once on | off;
文字列を 1 回または複数回置換します。デフォルトは 1 回置換です。たとえば、応答コンテンツの jb51 を置き換えたい場合、このサイトでは、複数の jb51 が表示される場合、最初の jb51 のみが置き換えられます。オフの場合、すべての jb51 が置き換えられます。
Syntax:
sub_filter_types mime-type ...;
置換する必要がある 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!
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 サイトの他の関連記事を参照してください。