NGINX-基本的な紹介3

8、NginxWEBモジュール

1.ランダムホームページ:random_index_module
(1)機能:マイクロアップデート
(2)目的:微調整更新メカニズムであるランダムページとしてホームページを設定します
(3)ランダムホームページを開始し
ます①:複数のホームページを作成します:touch / app / { blue.html、green.html、red.html、yellow.html}
②:
<html>
<head>
<title>青い色</ title>
</ head>
<body styleなど、さまざまなページにさまざまなコンテンツを書き込む= "background-color:blue">
<h1>青い色!</ h1>
</ body>
</ html>
NGINX-基本的な紹介3
NGINX-基本的な紹介3
NGINX-基本的な紹介3
NGINX-基本的な紹介3

③:ランダムなホームページを開始し
ます:vim /etc/nginx/conf.d/default.conf server {

location / {
#root / usr / share / nginx / html;
#index index.html index.htm;
root / app;
random_index on;
}
}
NGINX-基本的な紹介3
④:ホームページを更新し、変更を確認しますsystemctl restartnginx⑤
:ブラウザを使用してipにアクセスして表示しますWebページの変更:ブラウザのF5をクリックして、Webページの変更を確認してください!
⑥:テストが完了したら、この機能をコメントアウトしてください。他の実験に影響を与えないでください。


2.置換モジュール:sub_module
(1)目的:Webコンテンツの置換:テンプレートを使用してWebサイトを生成する場合、省略などの理由でコードが不十分ですが、現時点ではファイル数が多いため、すべてを再生成するのは不便です。その際、このモジュールを使用して一時的にエラー修正を実装できます。一方、これを使用して、サーバー側のテキストフィルタリングの効果を実現することもできます。
(2)置換を開始します:vim /etc/nginx/conf.d/default.conf // nginxデフォルトページ
サーバーを開始します{//サーバー
下にsub_filternginx'NIHAOSHUAI 'を挿入します{ ;
sub_filter_once on;
location / {
root / usr / share / nginx / html;
index index.html index.htm;
}
NGINX-基本的な紹介3
(3)サーバーを再起動します:systemctl restart nginx
(4)実験:ブラウザーアクセスip:
①:変更前:
NGINX-基本的な紹介3
②:変更後:
NGINX-基本的な紹介3
(5):テキストを変更しますnginxのすべて!
NGINX-基本的な紹介3
①:サーバーを再起動します:systemctlrestartnginx②
:再度アクセスします:NGINX-基本的な紹介3


3.ファイルの読み取り:
(1)モジュール:ngx_http_core_module
(2)構文:
①:構文:sendfile on | off;
デフォルト:sendfile on;
コンテキスト:http、サーバー、場所、場所にある場合
②:構文:tcp_nopush on | off ;
デフォルト:tcp_nopush off;
コンテキスト:http、サーバー、場所
③:構文:tcp_nodelay on | off;
デフォルト:tcp_nodelay on;
コンテキスト:http、サーバー、場所
(3)原理の紹介:
①:sendfile:
Sendfile()は使用されません従来のネットワーク伝送プロセス:
ハードディスク>>カーネルバッファ>>ユーザーバッファ>>カーネルソケットバッファ>>プロトコルスタック

図:NGINX-基本的な紹介3
ネットワーク送信にsendfile()を使用するプロセス
ハードディスク>>カーネルバッファー(kernelsocketバッファーへの高速コピー)>>プロトコルスタック
sendfile()は、切り替えの数だけでなく、コピーの数も減らすことができます。
③:tcp_nopushは
使用されませんtcp_nopush()ネットワークリソースの浪費:アプリケーションは、操作が生成されるたびにパケットを送信します。パケットには通常、1バイトのデータと40バイトのヘッダーがあるため、4000%過負荷は簡単にネットワークの輻輳を引き起こす可能性があります。同時に、
ネットワーク伝送効率を向上させるためにtcp_nopush()を使用してリソースが浪費されます。パケットは、特定のサイズに蓄積された後に送信されます。
④:tcp_nodelay
は、TCP_NODELAYオプションを使用してnginxの機能を開いたり閉じたりします。このオプションは、接続が永続接続に変換された場合にのみ有効になります。
TCP_NODELAYは、Nagleアルゴリズムを無効にします。つまり、パケットはすぐに送信されます。
NagleとDelayedACKのため、データパケットの確認情報は、送信する前に2つに蓄積する必要があります。接続が長い場合、奇数のパケットは40msの遅延を引き起こすため、tcp_nodelayはすぐにackを送信します。長い接続がない場合は、ackがすぐに送信されるため、このモジュールを閉じることができます。
(4):モジュールの
場所を有効にする/ video / {
sendfile on;
tcp_nopush on;
} //検証なしでデフォルトで開始


4.ファイル圧縮:
(1):原則の概要:このモジュールを開始して、送信前にファイルを圧縮し、送信効率を向上させます。
(2):モジュール:ngx_http_gzip_module
(3):構文:
構文:gzip on | off;
デフォルト:gzip off;
コンテキスト:http、サーバー、場所、場所にある場合

構文:gzip_comp_level level;
デフォルト:gzip_comp_level 1;(1〜9)
コンテキスト:http、サーバー、場所

構文:gzip_http_version 1.0 | 1.1;
デフォルト:gzip_http_version 1.1;
コンテキスト:http、サーバー、場所
(4)非圧縮ファイルを観察する:
①:Webページに何かを書き込む:dd if = / dev / zero of = / usr / share /nginx/html/2.html bs = 1M count = 200 //実験効果を高める
②:Webアクセスip plusディレクトリ:F12同時に、開発者モードを開く:圧縮前:
NGINX-基本的な紹介3
(5):圧縮モジュールを有効にする:
①:構成の書き込み:vim /etc/nginx/nginx.conf
httpでこのタグを有効にします:
http {
gzip on;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text / plain application / javascript application / x-javascript text / css application / xml text / javascript application / x-httpd-php image / jpeg image / gif image / png;
gzip_static on;
NGINX-基本的な紹介3
②:nginxを再起動:systemctlrestartnginx③
:圧縮ファイルのボリュームを確認します。
NGINX-基本的な紹介3


5.ページキャッシング:
(1):モジュール:ngx_http_headers_module
(2):役割:有効期限はページキャッシングを制御する役割を果たします。有効期限を適切に構成すると、多くのサーバー要求を減らすことができます。有効期限はhttpセクションまたはサーバーセクションで構成できます。または、場所セクションに参加します。
Nginx(サーバーへの圧力を軽減するためにキャッシュを期限切れにします)、
(3):構文:
構文:expich [modified] time;
expires epoch | max | off;
Default:expires off;
Context:http、server、location、if in location
“ epich: 「Expires」の値を1970年1月1日00
00 :01GMT」として指定します。max :「Expires」の値を10年として指定します。
-1:「Expires」の値を現在のサーバー時間-1sとして指定します。これは、永久に期限切れになることを意味します。
off:「Expires」と「Cache-Control」の値を変更しないでください。

(4):原則の紹介:キャッシュなし。サーバーにアクセスするたびに、フルテキストで送信されます。キャッシュを有効にすると、Webサイトの閲覧を高速化できます。
(5):キャッシュを有効にする:
①:ブラウザキャッシュを監視する:
ブラウザキャッシュをオンにしてページを閲覧します。(デフォルト):最初の戻りステータスコード200。ページオブジェクトの全文送信、2番目の戻りステータス304。ページオブジェクトの部分送信。
②:キャッシングを無効にし、ページを閲覧し、コード200を返します。全文送信、
③:キャッシングの原則を分析します。NGINX-基本的な紹介3

④:サーバーキャッシュモジュール:vim /etc/nginx/conf.d/default.conf
location / {
root / usr / share / nginx / html
index index.html index.htm;
24時間有効;
NGINX-基本的な紹介3
サーバーを再起動:systemctl restartnginx⑤
:ページを再度参照し、応答ヘッダーでサーバー応答のキャッシュ時間を確認します。
NGINX-基本的な紹介3
ブラウザーが1回アクセスした後、サーバーは1日以内にブラウザーの要求に応答しません
。∥:短所:短所は、適時性が低下することです。


6.防盗链:
(1):模块:ngx_http_referer_module
(2):语法:
構文:valid_referers none | ブロックされた| server_names | ストリング ...;
デフォルト:—
コンテキスト:サーバー、場所
(3):日志防御介绍
log_formatmain '$ remote_addr- $ remote_user [$ time_local] "$ request"'
'$ status $ body_bytes_sent "$ http_referer"'
'"$ http_user_agent" "$ http_x_forwarded_for "';

ログ形式のhttp_refererはレコードであり、アクセスポイントによって参照されるURLです。つまり、ハイパーリンクの上位アドレスです。
このアドレスを通じて、一種のネットワーク動作(ホットリンク)を見つけることができます。不正なホットリンクは、サイトの通常のアクセスに影響します。
これは、http_refererモジュールを介して制御できます。違法なホットリンクを防ぎます。

(4):ケース:
a.com Webサイトを作成します:
②> mkdir a.com//Webサイトを作成します
③> vim
NGINX-基本的な紹介3
/ etc / nginx / conf.d / a.com.conf //構成を変更します④> systemctlrestart nginx / /
restartnginx⑤:a.com Webサイトのホームページに何かを書き込みます:
NGINX-基本的な紹介3
⑥>ローカルドメイン名の解決を行います:NGINX-基本的な紹介3
⑥>アクセス:NGINX-基本的な紹介3
①> mkdirb.com // bWebサイトを作成する
②> vim / etc / nginx / conf.d / b 。 com.conf //構成を変更する
NGINX-基本的な紹介3
③>:ホームページを作成する:a.com Webページのコンテンツを不適切にする:
④>:a.com Webページ接続をコピーしてb.com Webページに書き込む:
⑤>:画像をクリックし、右クリックしてコピーします画像リンクアドレス、
<img src = " http://a.com/1.jpg " />
⑥>:アクセス:
NGINX-基本的な紹介3
⑤>:別のWebサイトログ:
vim / etc
NGINX-基本的な紹介3
/ nginx / nginx.confでa.comの構成開きますファイル
NGINX-基本的な紹介3
(5):a.comWebサイトでアンチホットリンクを有効にします。①
> vim / etc / nginx / conf /a.com.conf②
NGINX-基本的な紹介3
>再訪問の検証:
NGINX-基本的な紹介3
(6)一部のWebサイトで(ホットリンク)リソースを使用できるようにする場合:ブロック後にホワイトリストを追加し、アクセスを許可するWebサイトを追加するだけで、
NGINX-基本的な紹介3
systemctl restartnginxを使用して
アクセスを再度検証します
NGINX-基本的な紹介3


7.接続ステータス:
(1):モジュール:stub_status_module
(2):目的:ユーザー数とnginxリンクに関する情報を表示します。
(3):モジュールがインストールされているかどうか確認しますnginxの-V 2>&1 | grepをstub_status
NGINX-基本的な紹介3
(4):起動時の状態モジュール
①:設定状態モジュール:VIM /etc/nginx/conf.d/default.conf
NGINX-基本的な紹介3
②:systemctl再起動nginxの
③ :デフォルトサイトのステータスモジュールにアクセスします:10.8.162.6 /nginx_status④
NGINX-基本的な紹介3
:説明:
NGINX-基本的な紹介3


おすすめ

転載: blog.51cto.com/14881339/2540094