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

Gitのブランチについて

ちょっといろいろと触っているGitに関して。 前回は作業ディレクトリ、インデックス、コミットについて説明したのですが、今回はブランチについて行います。 Contents1 ブランチとは?2 ブランチに …

no image

Vagrantでのフォルダ共有

Contents1 vagrantとホストOSのフォルダの共有2 ネットワークアダプタ設定3 任意のディレクトリをマウント vagrantとホストOSのフォルダの共有 ディフォルトではvagrantは …

no image

キャッシュについて(主にmemcachedを中心に)

Webサービスのパフォーマンス向上で目に見えて効果があることの一つがDBへのアクセス回数を減らすことです。 それはSQLを発行する回数を少なくするなど、普段からのプログラムの書き方ももちろん大事なので …

no image

jenkinsのオートデプロイ

久々にJavaやりました。 Contents1 やりたいこと2 ハマりポイント2.1 Antでのjobの設定2.2 jenkinsでビルドできない2.3 jenkinsのオートデプロイ2.4 SSHで …

no image

vimの基本的な使い方 設定ファイル、基本コマンド他

もう4年ぐらいの付き合いになる憎らしくもかわいいエディタvi(vim)について。 雑誌に特集があったのでこれを機にまとめてみました。シリーズものになるかも・・・ Contents1 Vi(vim)とは …

アーカイブ