オリジナル:Linuxがnginxの
著者; ツバメ。
、nginxの
NGIXは、ApacheなどのWebサーバーで、それは、動的な、ウェブ側のロード・バランシングを行うために要求を転送することができリバースプロキシように、そして、 Tomcatアプリケーションサーバーを、当然のことながら、強制売春の不使用は、だけでなく、Webサーバを使用することができれば、それは主に行われているサーブレット背景ロジックコードで実行されている通常のアプリケーション層に使用される容器は、データベースサーバにアクセスするため、 一般的に、共通のサイトのApache + Tomcatの+データベースまたはNGIX + Tomcatの+データベース3つの物理アーキテクチャを使用し、それは大規模なWebアプリケーションである場合にもそのハードウェア負荷分散F5の層が存在します。 パフォーマンスの観点から、NGIXのパフォーマンスは、Apacheよりも若干良いように見えますが、ビューの使用ポイントの容易さ、Apacheの設定をより便利apacheの名声は、いくつかのより多くの人々と、大きくなるように思われるので、この関数は、非常に強力です。
1.ダウンロード
[ルート@ s6haiyanvm〜]#wgetのhttp://nginx.org/download/nginx-1.12.2.tar.gz LL -h nginxの-1.12.2.tar.gz#がどのくらい見る タールXFのnginxの-1.12.2。 tar.gz形式の#解凍し たCDのnginx-1.12.2.tar.gzは、 ls -lで 安定したバージョンであり、ベースはベータ版である12一般偶数バージョン
2、前にnginxの準備をコンパイルしてインストールします
useraddの-s / sbinに/ nplogin -M WWW # -s、ユーザーを追加し、適切なユーザー仮想ユーザー数はなり-M 上記のWWW IDを述べた SU - WWWを
3、インストールの依存関係のnginxの
#1 PCRE-develのPerl互換の正規表現言語 #1のOpenSSL-develのHTTPS のyum -y PCRE-develのインストール yumをOpenSSLの-develのインストール-y PCRE-develの-qa RPMを
4、nginxのをコンパイルしてインストールします
PWD#の/application/nginx-1.12.2べきこのパスで は./configure --help (1)./設定WWW --group --user = = = WWW --prefix /ファイルアプリケーション/ 1.12.2-nginxの--with-http_ssl_module-http_stub_status_module --with --user:ユーザー --group:ユーザグループ --prefix:インストールするには、 2つのモジュール:--with-http_stub_status_module --with-http_ssl_module ツリー-Lは $#表しエコー?上記、正しい戻り0の実装後、1を返し、エラーを示している (2)を作る#は、いくつかの構成に従ってコンパイル makeがインストール(3) 非常に、圧縮されたパッケージのフィンガープリントを作成するためのmd5sum nginxの/ 1.12.2.tar.gzの位アイデンティティへ
5、ビュー
/application/nginx-1.12.2/sbin/nginx -t#構文エラーをチェック #コマンドの実行/application/nginx-1.12.2/sbin/nginx グレップ80#のビューがありませんインストール| -lntup SSを 10.0.0.200#をブラウザでページを参照してください、ないをよく見が建て ビュー内部-v 10.0.0.200#linuxとカール
6、nginxの一般的な構成
[S6ルート@ oldboyedu-nginxの-1.12.2]#PWD /application/nginx-1.12.2 [@ oldboyeduルート-S6 nginxの-1.12.2]#LL 合計36 drwx ------ 2ルートWWW-マール4096 10:31 client_body_temp 15 drwxr XR-2 X-15-Marの10時00 4096ルートconfのnginxのプロファイルのルートディレクトリ drwx ------ 2 10:31 15月4096ルートのWWW fastcgi_temp ルート-XR-2 Xルートdrwxr 4096 3月15日午前10時00分のルートディレクトリのhtml nginxのサイトのディレクトリサイト drwxr-XR-X 2ルートルート 4096 3月15日10時31のログのnginxのログ drwx ------ 2 WWWルート4096 3月15日10時31 proxy_temp drwxr- XR-X 2ルートルート4096月 15 10:00 sbinにnginxののコマンド drwx ------ 2 10:31 15月4096ルートWWWのscgi_tempの drwx ------ルートuwsgi_temp 2 WWW 10:31 15月4096
Client_body_temp├──
├──のconf
│├──fastcgi.conf
│├──fastcgi.conf.default
│├──fastcgi_params
│├──fastcgi_params.default
│├──UTF-恋
│├──恋ウィン
├──のmime.types│
│├──mime.types.default
│├──nginx.conf #nginxメインの設定ファイル
│├──nginx.conf.default
│├──scgi_params
│├──scgi_params.default
├──uwsgi_params│
│├──uwsgi_params.default
│└──-UTFが勝つ
├──fastcgi_temp
├──HTML
│├──50x.html
│└──ウェブサイトのindex.html#のデフォルトのホーム・ページ・ファイル
├──ログ
│├──アクセスログのaccess.log#
│├──のerror.log
│└──nginx.pid
├──proxy_temp
├──sbinに
│└──nginxの
├──scgi_temp
└──uwsgi_temp
#設定ファイルの変更 のegrep '#'は##の図が含まれている のegrep '^ $' #空白行 のconf | egrepの'#^ $' / nginx.conf#が空白行または#除外する egrepのを'^ $ |#'のconf / nginxのを。 conf.default> confに/ nginx.conf
設定ファイルは、それを再起動することを忘れないでください変更 /アプリケーション/ nginxの-1 / sbinに / nginxの-sリロード# グレースフルリスタート /アプリケーション/ nginxの-1 / sbinに / nginxの-s停止# エレガント停止(使用するしかありません代替) / /アプリケーションnginxの-1 / sbinに/ nginxの
第二に、小さなウェブサイトを構築
1、ファイルを変更nginx.conf
worker_processes 1; イベント{ worker_connections 1024。 } HTTP { のmime.typesを含みます。 default_type application / octet-streamと; sendfileの上; keepalive_timeout 65; サーバー{ 80を聞きます。 SERVER_NAME www.etiantian.org; 位置/ { ルート HTML / WWW。 インデックスのindex.html index.htmを。 } error_page 500 502 503 504 /50x.html。 位置= /50x.html { ルートHTML。 } } }
2.環境を作成します。
ます。mkdir -p /application/nginx-1.12.2/html/{www,bbs,blog}#は、マルチレベルのディレクトリを作成します
行わ;エコー$ name.etiantian.org> /application/nginx-1.12.2/html/$name/index.htmlを行い、WWWのBBSのブログで名前のため のWWW BBSブログで名前のために、猫/application/nginx-1.12を行います0.2 / HTML / $名/ index.htmlを、完了
3.チェック文法と再起動
[oldboyedu-S6のnginx-1.12.2 @ルート]#/application/nginx-1.12.2/sbin/nginx -t nginxの:構文/application/nginx-1.12.2/conf/nginx.conf設定ファイルはokです nginxの:設定ファイル/application/nginx-1.12.2/conf/nginx.confテストが成功し ます。[root @ oldboyedu-S6のnginx-1.12.2]#/application/nginx-1.12.2/sbin/nginx -sリロード
4.windowsテストブラウザ(ノートキャッシュ)
(1)方法1:猫の/ etc / hosts#ホスト、DNS変更 10.0.0.200 www.etiantian.org bbs.etiantian.org blog.etiantian.org www.eitiantian.org#ブラウザ入力テスト (2)第2の方法を: -Hホストカール:www.etiantian.org 10.0.0.200#ホスト内のホストを変更
5、トラブルシューティングのプロセス:
1.linuxコマンドラインを表示することができますされ www.etiantian.org 10.0.0.200:-vhホストカール 2.Windowsローカルシェル ピング
6、より多くを構築
[ルート@ oldboyedu-S6 nginxの-1.12.2]#猫CONF / nginx.confは 1 worker_processes。 イベント{ worker_connections 1024。 } HTTP { のmime.typesを含みます。 default_type application / octet-streamと; sendfileの上; keepalive_timeout 65; サーバー{ 80を聞きます。 SERVER_NAME www.etiantian.org; 位置/ { ルートHTML / WWW。 インデックスのindex.html index.htmを。 } error_page 500 502 503 504 /50x.html。 位置= /50x.html { ルートHTML。 } } サーバー{ 80を聞きます。 SERVER_NAME bbs.etiantian.org; 位置/ { ルートHTML / BBS。 インデックスのindex.html index.htmを。 } error_page 500 502 503 504 /50x.html。 位置= /50x.html { ルートHTML。 } } サーバー{ 80を聴きます。 SERVER_NAME blog.etiantian.org; 位置/ { ルートHTML /ブログ。 インデックスのindex.html index.htmを。 } error_page 500 502 503 504 /50x.html。 位置= /50x.html { ルートHTML; } } } [ルート@ oldboyedu-S6 nginxの-1.12.2] -Hホストカール#:10.0.0.200 bbs.etiantian.org bbs.etiantian.org -Hホストカール[ルート@ oldboyedu-S6 nginxの-1.12.2]# :10.0.0.200 blog.etiantian.org blog.etiantian.org
理解の第三に、位置パラメータ
「 - 」の場合(大文字と小文字を区別)マッチを区別するために使用され、〜/フォト{} 大文字と小文字を区別しないマッチングのために「〜*」。論理演算子を使用することもできます!上記マッチングは、すなわちを否定。、!〜と!〜*。 「^〜」の役割は、従来の文字列照合確認後、構成文字列に一致する最も具体的な場所は、この接頭辞を持っている場合は、正規表現のチェックをしないことを確認するために正規表現をしません。
[ルート@ oldboyedu-S6 nginxの-1.12.2]#猫CONF / nginx.confは 1 worker_processes。 イベント{ worker_connections 1024。 } HTTP { のmime.typesを含みます。 default_type application / octet-streamと; sendfileの上; keepalive_timeout 65; サーバー{ 80を聞きます。 サーバー名www.etiantian.org etiantian.org。 ルートHTML / WWW。 位置/ { 401を返します。 } 場所/ドキュメント/ { 403を返します。 } 場所^〜/画像/ { 404を返します。 } 場所〜* \(GIF | JPG | JPEG)。$ { 500を返します。 } } } ^〜 〜* /ドキュメント/ / "場所〜* \(。:1号を $ {JPEG、GIF | | JPG)、" 定期的なマッチング 2の"場所/文書/ {"通常の文字列にマッチしますあなたは、通常の優先順位のマッチング定期を持っている場合。 ランク3:すべての位置が一致することができない後「位置/ {」デフォルトの一致。 -I 10.0.0.200カール[ルート@ oldboyedu-S6のnginx-1.12.2]# HTTP / 1.1 401不正な nginxの/ 1.12.2:サーバー 日付:木、2018年3月15日午前四時13分41秒GMTの コンテンツタイプ:テキスト/ HTML のContent-Length:195 接続:キープアライブ #[oldboyedu-S6のnginx-1.12.2 @ルート] [ルート@ oldboyedu-S6のnginx-1.12.2]カール#-I 10.0.0.200/documents/index.html HTTP 403禁止/1.1の サーバー:nginxの/ 1.12.2 日付:木、2018年3月15日午前四時14分42秒GMTの のContent-Type:テキスト/ HTML コンテンツの長さ:169 接続:キープアライブ [ルートoldboyedu-S6のnginx-1.12.2 @]#カール-I 10.0.0.200/documents/w.jpg HTTP / 1.1 500内部サーバーエラー サーバー:nginxの/ 1.12.2 日:木、2018年3月15日4時15分56秒GMTの コンテンツタイプ:テキスト/ HTMLの コンテンツの長さ:193 接続:閉じる [ルート@ oldboyedu-S6のnginx-1.12.2]# [ルート@ oldboyedu-S6のnginx-1.12。 2]#カール-I 10.0.0.200/images/www.jpg HTTP / 1.1 404が見つかりません サーバー:nginxの/ 1.12.2 日付:木、2018年3月15日4時16分52秒GMTの コンテンツタイプ:text / htmlで のContent長さ:169 接続:キープアライブ