skillup

技術ブログ

サーバー・ネットワーク

nginx基本

投稿日:2016年10月14日 更新日:

データベースについて勉強していましたが、実務でnginxを触る機会があったので、これを機に勉強。

参考文献

nginx入門

nginx基礎

  • 必要な情報はkey=>valueに近い、ディレクティブといわれる構文で定義される。
    (例 worker_process 1)
  • includeというディレクティブで他の設定ファイル(多くは子供に相当するファイル)を読み込むことができる
    (例 include sites/*.conf)
  • あるディレクティブの中だけで有効に機能するディレクティブを定義するには下記のような、ディレクティブブロックを使う
    events{
    worker_process:1024;
    }
    ※親のディレクティブは子供に自動適応される。

コアモジュール

nginxの基本的なディレクティブについて

  • worker_process  同時にこなせるプロセス数。CPUのコアごとに増やしていくのが一般的。autoという設定もある。
  • worker_priority ワーカプロセスの優先度を-20から19まで定義する。数字が大きいほど優先度は低い。ディフォルトはなし。-5以下にしないほうがいい。
  • worker_rlimit_nofile ワーカプロセスが同時に使えるファイルの数を定義 10000が一般的。

httpモジュール

httpアクセスを定義するブロックに関して。

  • http 全てのhttpアクセスに共通の要素をここに書いておく
  • server 特定のホスト名(www.example.com)をnginxに認識させ、独自の設定を持たせる
  • location webサイトの特定の位置に適応が可能

設定ファイルサンプル

ディレクティブ説明

  • listen どのポート番号使用時に設定を有効にするかの判定。httpならば80、httpsなら443が一般的
  • server_name 1つ以上のホストを与え、最初に一致したブロックを選択させる。ワイルドカードなども使用できる
  • client_max_body_size クライアント要求本体サイズの上限。この上限を超えると、HTTPエラー413を変えす
  • access_log/error_log アクセスログ・エラーログのパス

location 要求されたURIとマッチングされるパターンを指定して定義できる。正規表現使用可。/だけの場合はすべてに適用される。

-サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

jenkinsでのSSH鍵認証&herokuからのソース取得

jenkinsでGitからソースを取得するときに鍵認証をかけている場合はそれ用の設定が必要になります。 基本的な考え方ですが、userがjenkinsだったときに、ssh鍵認証やherokuでどのよう …

no image

nohup(sshログアウトしてもコマンドは続く)+ StickyBit(誰もで書き込み自由)

インフラ系の小ネタです Contents1 nohup2 Sticky Bit(スティッキービット) nohup sshでログインしている時に長時間かかるような処理を実行中、ログアウトするとそのコマン …

no image

zabbixオリジナルアイテム&トリガー

zabbixは標準でもかなりのアイテム&トリガーが入っていますが、オリジナルなものを入れたいときも当然あるかと思います。 そんなときにオリジナルのアイテム&トリガーを入れることができます。 実務ではg …

no image

dockerコンテナ間での連携(PHP+MySQL)

dockerでのコンテナ間の連携について 以前、dockerではCentOSのイメージからコンテナを作成し、その中にphp,apache,mysqlをインストールしてましたが、dockerの使い方とし …

no image

追跡ブランチからローカルブランチを作る方法~ (svn→gitの移行など)

SVNで運用されていたプロジェクトをgitに移行する機会があったのでその時のメモなどを。 思ってたよりは楽だったかな・・・ Contents1 準備2 実際の移行(git svn clone)3 gi …