Help us understand the problem. What is going on with this article?

nginxについて

More than 3 years have passed since last update.

nginxの用途

・静的コンテンツ配信
・アプリサーバへのリバースプロキシとして

アーキテクチャ

・イベント駆動
・イベントに応じて定められた手順を実行
・接続要求、読み込み、書き込みイベント
・Apache→クライアントの接続要求から始まる一連の処理を書くプロセスで1接続づつ処理
・I/O Multiplexing 複数のファイルディスクリプタを監視。入出力可能になるまで待機させる
・ノンブロッキングI/O
 すぐに処理できないディスクリプタとの入出力処理は中断、別の入出力処理に移ることで並行性を高めてる
・非同期I/O
 nginxはマスタプロセス、ワーカプロセスのマルチプロセス構成。
 マスタプロセスは1つ。ワーカプロセスは設定で複数起動可能。
 複数のクライアントとの入出力を並行して行うことができる
 ワーカプロセスは複数起動可能→容易なスケール。
 マスタプロセスはワーカプロセスのPIDを保持。マスタにシグナルを送ればnginx全体のプロセスを制御可。
 

インストール

#CentOSの場合
#/etc/yum.repos.d/nginx.repo を作成

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1
$ sudo yum install nginx

設定をデバッグ

ログに流れてくる変数などを出力することで確認できる。

#nginx.conf デバッグ用のLogFormatを追加

log_format for_debug "[DEBUG] $debug_val";
#sites-available内の各サイト設定に

#デバッグ用フォーマット指定
access_log /var/log/nginx/xxx.com/access.log for_debug;

location ~ \.php${
        #デバッグ用変数に確認したいデータを指定
        set $debug_val $fastcgi_script_name;

        fastcgi_pass    127.0.0.1:9000;
        fastcgi_index   index.php;
        fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include         fastcgi_params; 
} 

 

まとめ

nginx@nginx.org ユーザ向けメーリングリスト
nginx-announce@nginx.org セキュリテイ等アナウンス
nginx plus Nginx, Inc.提供の商用版。

benchan
e-grant
EC・通販に特化したCRMツール「うちでのこづち」を中心に、CRM関連のビックデータ・AI系の開発・運営を行なっています。
https://www.e-grant.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away