・02・nginxの高度な構成管理サービスの最適化

ビジネスシーン一般的に使用される機能は、nginxのはhttpの概要モジュール

ngx_ HTTP_ core_モジュール

含む - HTTP nginxのブロック部の構成に対応するいくつかのコアHTTPパラメータの設定

ngx_ HTTP _access_モジュール

nginxののサイトへのユーザーアクセスを制御するアクセス制御モジュール

ngx_ HTTP_ gzip_モジュール

データを圧縮するための圧縮モジュールは、nginxのは、パフォーマンスの最適化モジュールに属する返さ

ngx_ http_fastcgi_モジュール

FastCGIモジュール、PHPなどの動的アプリケーションと関連モジュール、

ngx_ HTTP_ PROXY_モジュール

プロキシプロキシモジュール

ngx_ http_upstream_モジュール

ロードバランシングモジュールは、ヘルスチェックのロードバランシングとノードのサイトを達成することができます

ngx_ HTTP_ rewrite_module

URL書き換えモジュールアドレス

ngx_ HTTP_ limit_conn_module

同時ユーザー数と接続要求モジュールの数を制限

ngx_ HTTP_制限REQモジュール

nginxのを制限する定義されたキーの要求処理率

ngx_ HTTP_ LOG_モジュール

カイアクセスモジュール8、指定された形式のレコードnginxの顧客は、チー8などの情報にアクセスするには

ngx_ HTTP_ auth_basic_module

nginxのにアクセスするためのWebユーザーアカウントとパスワードが設定したWeb認証モジュール、

ngx_ HTTP_ SSL_モジュール

このようhttptsなどのHTTP接続を暗号化するためのSSIモジュール、

ngx_ HTTP _stub_ステータス:モジュール

記録ステータス情報nginxの基本的なアクセスモジュール

コアコンフィギュレーション・ファイルnginx.conf

worker_processes 1;

イベント{

    worker_connections 1024;

}

HTTP {

    mime.typesを含めます。

    default_type application / octet-streamと;

    sendfileの上;

    keepalive_timeout 65;

    サーバー{

        80を聞きます。

        サーバー名はlocalhost。

        位置/ {

            ルートHTML;

            インデックスのindex.html index.htmを。

        }

        error_page 500 502 503 504 /50x.html。

        位置= /50x.html {

            ルートHTML;

        }

    }

}

サーバ内のnginxのは、ウェブの3つのタイプのホスティング、ドメイン名、ポート、IPに、仮想ホストであります

実際のドメイン名ベースの仮想ホスティング

1、名前ベースnginx.confを設定

#diff nginx.conf nginx.conf.default#いくつかの重要な文書を、それ自体は、バックアップファイルを持っています

#egrep -v "^ $ | ^#| ..#" nginx.conf> nginx.conf2 / egrepの-v "^ $ |#" nginx.conf> nginx.conf2

 サーバー{

        80を聞きます。

        SERVER_NAME  www.ram.shop ;

        位置/ {

            ルートHTML / WWW。

            インデックスのindex.html index.htmを。

        }

2、対応するドメイン名とサイトのディレクトリのファイルを作成します

ルートHTML / WWWの対応に新しいフォルダやWWWサーバーで#ます。mkdir -p ../html/www#htmlのディレクトリ[mobanのconf @ルート]

#エコー[mobanのconf @ルート] " http://www.ram.shop "> ../ HTML / WWW / index.htmlを

[mobanのconf @ルート]#猫../html/www/index.html

http://www.ram.shop

3、構文をチェックし、nginxのファイルをリロード

[mobanのconf @ルート]#.. / sbinに/ nginxの-t

nginxの:構文/application/nginx/conf/nginx.conf設定ファイルはokです

nginxの:テスト/application/nginx/conf/nginx.conf設定ファイルは成功しています

[mobanのconf @ルート]#../sbin/nginx -sリロード

[mobanのconf @ルート]#psの-ef | grepをnginxの    

ルート8078 1978 0 5:59のpts / 0午前0時00分00秒grepのnginxの

[mobanのconf @ルート]#は"192.168.2.60エコーwww.ram.shopを " >> / etc / hostsファイル

[mobanのconf @ルート]#尾-1 / etc / hostsファイル

192.168.2.60のwww.ram.shop

クライアントのhostsファイルと設定

C:\ WINDOWS \ System32 \ Drivers \ Etc \ Hostsに192.168.2.60添加   www.ram.shop

 

4、複数の名前ベースのバーチャルホストを設定します

それはオーバー、仮想ホストを追加し、ドメイン名とそれに対応するフォルダを変更し、サービスをリロードし、hostsファイルにドメイン名を追加し、クライアントのhostsファイルに設定されたDNSを追加することで、サーバエリア内nginx.confのhttpエリアを追加

サーバエリアZMを追加

   サーバー{

        80を聞きます。

        SERVER_NAME  www.ram.com ;

        位置/ {

            ルートHTML / WWW。

            インデックスのindex.html index.htmを。

        }

        error_page 500 502 503 504 /50x.html。

        位置= /50x.html {

            ルートHTML;

        }

    }

    サーバー{

        80を聞きます。

        SERVER_NAME  www.zm.com ;

        位置/ {

            ルートのhtml / ZM;

            インデックスのindex.html index.htmを。

        }

        error_page 500 502 503 504 /50x.html。

        位置= /50x.html {

            ルートHTML;

        }

    }

形式が正しいかどのファイルを検出

nginxのサービスをリロード/ sbinに/ nginxの-sリロード

ホストの追加

ブラウザテスト

仮想ホスト・ポートの実際の構成に基づいて、

各仮想ホストのリスニングポートを変更します。

nginx.conf変更

    サーバー{

        81を聞きます。

        SERVER_NAME  www.ram.com ;

        位置/ {

            ルートHTML / WWW。

            インデックスのindex.html index.htmを。

        }

        error_page 500 502 503 504 /50x.html。

        位置= /50x.html {

            ルートHTML;

        }

    }

    サーバー{

        82を聞きます。

        SERVER_NAME  www.zm.com ;

サービスを再起動し、ファイル形式を確認し、ポートを参照してください

[moban nginxの@ルート]#は、netstat -lntup | grepをnginxの

TCP 0 0 0.0.0.0:81 0.0.0.0:* LISTEN 1666 / nginxの         

TCP 0 0 0.0.0.0:82 0.0.0.0:* LISTEN 1666 / nginxの         

TCP 0 0 0.0.0.0:83 0.0.0.0:* LISTEN 1666 / nginxの

 

テスト

 

ポートだけでなく、既存のサービスとの競合は、あなたが自由に変更することができ、原則的に、それは1024以上と未満65535です

実際のIPアドレスベースのバーチャルホストの設定

操作が似ている、nginx.confファイルが変更されている、あなたはあまりを使用して、事前にホストに少数のアドレスを追加する必要があります

 

 

 

Webサイトをチェックすると、スクリプトで生きています

スクリプトの内容

#!/ binに/ bashの
#Webサイトを参照してください定期的なタスクを追加し、生きている、分ごとに3回チェック
作家パトリックに#byを /etc/init.d/の機能
(チェック){ 
  IF(($ ==   " 0 " )) ;その後、
    アクション" :!このURL $ Bは生きている"   / binに/ trueに
    出口0 
  他の
    アクション   " !このURL:$ Bは生きていません" / binに/ falseに
    1番出口。
  Fiの
} 
メイン(){ 
  B = $ 1つの。
  wgetの - Oは/ dev / nullを -q $ 1 
  A = `エコー$?` 
  チェック
  終了0 
} 
メイン$ 1

テスト

nginxの設定戦闘共通機能

マスター構成し、各仮想ホストの設定ファイルの分離:nginxの設定ファイルを最適化

ディレクトリにnginx.confサーバモジュールアウト、容易な管理、使用メインの設定ファイル内のファイルが含まれ、その上にファイルを宣言する場所

文言を含めます

 

コンフィギュレーション

#mkdir余分

#sed -n '11、22pの」nginx.conf>エクストラ/ www.conf

#sed -n '23、34P」nginx.conf>エクストラ/ nginx.conf

#sed -n '35、46P」nginx.conf>エクストラ/ bbs.conf

#sed -i '11、46D」nginx.conf

#sbinに/ nginxの-t

#sbinに/ nginxの-sリロード

nginx.confファイル構成

HTTP {

    mime.typesを含めます。

    余分/ www.confが含まれます。

    余分/ nginx.confを含めます。

    余分/ bbs.confが含まれます。

    default_type application / octet-streamと;

    sendfileの上;

    keepalive_timeout 65;

}

または使用のsed -i '10私は、余分/ www.confが含まれる; \ ninclude余分/ nginx.conf「nginx.conf

#1 PWD [moban余分@ルート]

/アプリケーション/ nginxの/ confに/エクストラ

#1 LS [moban余分@ルート]

bbs.conf nginx.conf  www.conf

エイリアスの仮想ホストの構成

メインのドメイン名以外の1人の以上のドメイン名、仮想ホストサイトで複数の機能へのユーザーアクセスを達成するために、対応するドメイン名を仮想ホストを設定するには

 

ステータス機能の戦闘

 

ngx_ HTTP _stub_ステータス:モジュール

記録ステータス情報nginxの基本的なアクセスモジュール

nginxのバージョン:nginxの/ 1.17.4 [mobanのconf @ルート]#../sbin/nginx -V

GCC 4.4.7 20120313によって建て(Red Hatの4.4.7-4)(GCC)

OpenSSL 1.0.1e-FIPS 2013年2月11日で構築されました

TLS SNIサポートが有効

引数を設定:--user = nginxの--group = nginxの--prefix = /アプリケーション/ nginxの--with-http_stub_status_module --with-http_ssl_module <==有这个就对了

[ルートmobanのconf @]#猫余分/ status.conf

##状態

サーバ{

    80を聞きます。

    SERVER_NAME status.ram.com;

    位置/ {

        stub_status上;

        オフaccess_logの;

    }

}

メインの設定ファイルは、情報が含ま追加します

余分/ status.confが含まれます。

窓の決意status.ram.comにホストを追加します。

サービスを再起動する構文をチェック

[mobanのconf @ルート]#../sbin/nginx -t

mobanのconf @ルート]#../sbin/nginx -sリロード

テスト:接続数として、それが自動的に接続の数をカウントします

 

アクティブな接続:5 ==>は5として扱われているいくつかの活動をリンク

サーバはリクエスト扱い受け入れ
 76 76 63

今76個の接続をnginxのために最初から処理を示す最初のサーバー

今から開始する第二のサーバは、nginxのが正常に要求が失われないことを示す等しい76の接続の合計を処理表します

今まで最初から第三のサーバnginxの表現は63のリクエストを処理し

読書:0書き込み:1待機中:4

nginxのは、クライアントの数のヘッダ情報を読み出します

nginxのは、ヘッダ情報のクライアント数に返します

処理されるのを待っている接続の数

エラーログの設定でnginxの増加

error_logには、コア機能モジュールパラメータであります

主な設定ファイルを設定し、その上でエラーログの場所を追加

error_logのログ/ error.logに - > nginx.conf

 

アクセスログ(access_logの)は、HTTPのラベルに配置されました

ngx_ HTTP_ LOG_モジュール

カイアクセスモジュール8、指定された形式のレコードnginxの顧客は、チー8などの情報にアクセスするには

 

 

LOG_FORMAT主要フォーマットを追加するためのメインの設定ファイルは、デフォルトのファイルのコピーから見つけることができます

HTTP {

    mime.typesを含めます。

    default_type application / octet-streamと;

    メイン ' - $のREMOTE_USER [$ time_local] "$依頼" の$ REMOTE_ADDR' LOG_FORMAT

                      '$ステータスの$ body_bytes_sent "$ HTTP_REFERER"'

                      ' "$ HTTP_USER_AGENT" "$ HTTP_X_FORWARDED_FOR"';

    sendfileの上;

    keepalive_timeout 65;

    サーバー{

        81を聞きます。

        SERVER_NAME  www.ram.com ;

        位置/ {

            ルートHTML / WWW。

            インデックスのindex.html index.htmを。

        }

メインaccess_www.log access_logのログ/。

ログファイルには、ビューで、それへのアクセス、元のWebログを表示し、

[ルートmobanログ@]#猫のaccess_www.log

192.168.2.2 - - [10/10月/ 2019:02:44:18 0800] "GET / HTTP / 1.1" 304 0 " - " の「Mozilla / 5.0(Windows NTの10.0; Win64の、のx64)のAppleWebKit / 537.36(KHTML 、ヤモリなど)クローム/ 76.0.3809.132サファリ/ 537.36" " - "

[ルートmobanログ@]#カールwww.ram.com:81

http://www.ram.com

[ルートmobanログ@]#猫のaccess_www.log

192.168.2.2 - - [10/10月/ 2019:02:44:18 0800] "GET / HTTP / 1.1" 304 0 " - " の「Mozilla / 5.0(Windows NTの10.0; Win64の、のx64)のAppleWebKit / 537.36(KHTML 、ヤモリなど)クローム/ 76.0.3809.132サファリ/ 537.36" " - "

192.168.2.60 - - [10 /月/ 2019:02:44:54 0800] "GET / HTTP / 1.1" 200 19 " - "「カール/ 7.19.7(I386-RedHatの-LinuxベースGNU)libcurlの/ 7.19 0.7 NSS / 3.14.0.0にzlib / 1.2.3 libidn / 1.18 libssh2の/ 1.4.2" " - "

ポーリングアクセスログ切断

#!/ binに/ shを

DATEFORMAT = `日付+%Y%m個の%のD '

BASEDIR = "/アプリケーションシートのイオン/ nginxの"

Nginxlogdir = $ BASEDIR /ログ」

ログ名=」アクセスWWW」

[-d $ Nginxlogdir] && CD $ Nginxlogdirのllexit 1

[-f $ {ログ名} .1og] || lexit 1

/ binに/ MV $ {ログ名).1og $ {DATEFORMAT)_ $ {ログ名} .1og

$ BASEDIR / sbinに/ nginxの-Sリロード

 

おすすめ

転載: www.cnblogs.com/unicornam/p/11645768.html