ホームページ > バックエンド開発 > PHPチュートリアル > Nginxのコピートラフィック

Nginxのコピートラフィック

WBOY
リリース: 2016-07-29 08:51:21
オリジナル
1339 人が閲覧しました
Ngnixを使用してオンライントラフィックをテストマシンにコピーします(1つのhttpリクエストを1つのトラフィックとみなします)
開発環境:CentOS 6.4
nginxのインストールディレクトリ:/usr/local/nginx-1.4.2
各モジュールのダウンロードディレクトリインストールパッケージ: /data/nginxinstall
1. pcre をインストールします
#yum -y install pcre-devel
2. zlib
yum をインストールします zlib zlib-devel
3. LuaJIT をインストールします
# cd /data/nginxinstall
# wget http://luajit.org/download/LuaJIT-2.0.2.tar.gz
# tar -xzvf LuaJIT-2.0.2.tar.gz
# cd LuaJIT-2.0.2
# make
lib と include は/usr/local/lib および usr/local/include に直接配置
環境変数を設定する
export LUAJIT_LIB=/usr/local/lib
export LUAJIT_INC=/usr/local/include/luajit-2.0
export LD_LIBRARY_PATH=/usr/local /lib :$LD_LIBRARY_PATH
4. httpLuaModule
# cd /data/nginxinstall
# wget https://github.com/chaoslawful/lua-nginx-module/archive/v0.8.6.tar.gz
# tar をダウンロードして準備します-xzvf v0 .8.6
5. 以下で Nginx のインストールを開始します (nginx1.10.0 を使用しようとするとコンパイル エラーが発生します):
# cd /data/nginxinstall/
# wget http://nginx.org/download/nginx-1.4。 2.tar .gz
# tar -xzvf nginx-1.4.2.tar.gz
# cd nginx-1.4.2
# ./configure --prefix=/usr/local/nginx-1.4.2 --add- module=./lua-nginx-module-0.8.6
# make -j2
# make install
6. nginx/conf/nginx.conf ファイルを編集します (このファイルは json 形式であり、ツリーとして表示されます) ):
http ノードの下に追加:
アップストリーム オンライン {
use using through through through out through out through out together out outouter outcent out の to to so ----- ,
location ~ * ^/antispam {
client_body_buffer_size 2m;
$svr "on" を設定します; ^/s1(.*)$ $1 Break;
proxy_pass http://s1; 上流のオンラインにジャンプします
}
場所 ~ * ^/test {
log_subrequest on;
rewrite ^/test(.*)$ $1 Break;
proxy_pass http://test; -- リバース プロキシ、上流の test にジャンプします
}
7.ファイル:
ローカルオンライン、テスト、アクション
action = ngx.var.request_method
if action == "POST " then
ngx.req.read_body() -- 本体パラメータを解析する前に必ず本体を読んでください
local arg = ngx.req.get_post_args() -- post にはパラメータを渡す必要があります arry = {method = ngx.HTTP_POST, body = ngx.var.request_body, args=arg}
else
arry = {method = ngx.HTTP_GET}
end
if ngx.var.svr == "on" then
online, test = ngx.location.capture_multi {
{ "/online" .. ngx.var.request_uri, arry},
{ "/test" .. ngx.var.request_uri, arry},
}
else
online = ngx.location.capture_multi {
{ "/ online" .. ngx.var.request_uri, arry}
}
end
if online.status == ngx .HTTP_OK の場合 -- オンライン サーバーの結果のみを返します
ngx.say(online.body)
else
ngx.status = ngx.HTTP_NOT_FOUND



end



8 POST パラメーターに中国語があります。 、エンコーディングの問題:



Nginx 構成 UTF8: サーバー ノードで文字セット utf-8 を構成します。形式:

上記では、Nginx のコピー トラフィックについてその側面も含めて紹介しましたが、PHP チュートリアルに興味のある友人に役立つことを願っています。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート