この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 24418|答える: 1

[ウェブ] Nginxのリバースプロキシとコンテンツ置換モジュールを使って動的なウェブコンテンツ置換を実装してください

[リンクをコピー]
掲載地 2019/04/02 11:47:27 | | | |
Nginxは軽量で高性能なサーバーソフトウェアですが、軽量ながら非常に高性能です。WEBサービス、リバースプロキシ、ロードバランシング、キャッシュサービス、さらにはモジュールを追加することでRTMPストリーミングサービスの構築にも利用できます。 最近、顧客からの要望があり、nginxのウェブコンテンツ置換モジュールを使う必要がありました。以下は関連する実験の記録です。皆さんと連絡するために投稿しています。もし不備があればお知らせください。

ngx_http_sub_moduleモジュールは、ウェブサイトのレスポンス内容の文字列を変更するフィルターです。 このモジュールはすでにnginxに組み込まれていますが、デフォルトではインストールされておらず、インストールするには設定パラメータを追加する必要があります:--with-http_sub_module すでにnginxをインストールしている場合は、このモジュールを追加するだけで十分です。

1. 設置:

NGINX公式ウェブサイトのダウンロードおよびインストールパッケージ:ハイパーリンクのログインが見えます。

# wgetハイパーリンクのログインが見えます。

# タール -ZXVF nginx-1.11.5.tar.gz

# CD NGINX-1.11.5

# ./configure --with-http_stub_status_module --with-http_sub_module && Make & Make インストール

2. 共通の指示:

2.1 sub_filter 命令:sub_filter文字列(元の文字列)置き換え(置き換える文字列);

記述文字列を記述文字列に置き換える必要性を設定するために。Stringは置き換える文字列であり、置き換えは新しい文字列であり、その中に変数を含めることができます。

2.2 sub_filter_last_modified 指示:sub_filter_last_modified on | オフ;

これは、http、server、nginx.confの3つの場所で置き換えを変更するか、変更するか設定するために使われます。デフォルト値はオフにされています。

2.3 sub_filter_once指令:sub_filter_onceオン | オフ;

弦の置換回数を設定するために使われます。デフォルトでは、交換は一度だけです。 オンの場合は、最初にマッチしたキャラクターのみがデフォルトで置き換えられ、オフの場合はマッチしたすべてのキャラクターが置き換えられます

2.4 sub_filter_types 指示:sub_filter_types *

置き換えるMIMEタイプを指定するために使われ、デフォルトは「text/html」で、*に設定すれば、

注意:上記のコマンドはhttp、サーバー、nginx.confのロケーションで設定可能です。

3. ウェブコンテンツのリバースプロキシ動的置換例参照:

上流ハイパーリンクのログインが見えます。 {

サーバー 118.184.180.46:80;

}

#反向代理、複数のサーバーIPがある場合は、ロードバランシング方法やウェイトなどのポリシーを追加することもできます#

サーバー {

80;

#监听端口#

server_nameハイパーリンクのログインが見えます。;

#设置server の名前#

チャーセット UTF-8;

#设置字符编码为utf-8は実際の状況に応じて調整可能です#

所在地 / {

proxy_passハイパーリンクのログインが見えます。$request_uri;

#反向代理规则#

proxy_set_header 受理符号化は縮めます。

#设置反向代理头部、時々元のサーバーがgzip形式に応答し、置き換え時に問題が起きますが、このアイテムで解決できます#

subs_filter 「183.251.160.127」 「123.181.128.17」;

#替换指定ip、183.251.160.127をここで123.181.128.17に置き換えてください。#

subs_filter 『福建省龍岩市移動』『河北省唐山市電信』;

#替换城市. オペレーター情報:このnginx交換モジュールは中国語交換に対応しています#

subs_filter_typesテキスト/html;

#指定被替换的MIME类型#

sub_filter_once続けてください;

#指定字符串替换次数、オンは最初にマッチした文字のみを置き換える、オフはマッチしたすべての文字を置き換えることを意味します#

}

}

説明:

1. このモジュールは大文字を区別しません。

2. 中国の代替支援;

Nginx.conf フル構成:


実験効果のスクリーンショット:



結論:

もう一つの似たようなコンテンツ代替モジュールnginx_substitutions_filter興味があれば、試して遊ぶこともできます。



レンダリング:



コードの設定:







先の:Spring JPAセーブとsaveAndFlushの違い
次に:ITブラックリストに関するクエリ、ネットユーザーがこのニュースを報じて共有しましたが、あくまで参考までに
掲載地 2021/08/02 17:43:22 |
共有してくれてありがとうございます!
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com