skillup

技術ブログ

サーバー・ネットワーク 未分類

nginx基本

投稿日:

データベースについて勉強していましたが、実務で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

crontab 確認方法

crontabが動かないときに確認すること。 Contents1 cron自体が動いているか(下記コマンドでログを確認)2 実行権限が正しいか3 プログラム内部のファイルパスが絶対パスになっているか4 …

no image

サーバーの過負荷の発見 理論編

会社のテストサーバー(このブログが入っているサーバー)なんかが重くなってくると、再起動したりしているわけなんですが、CPUやメモリの使用率をみたり、といったシステマティックな運用はしてないです。 本来 …

no image

MacでのVirtualHost設定

MacでのVirtualHostについて。 Contents1 設定方法2 注意点2.1 httpd -S2.2 httpd: Could not reliably determine the ser …

no image

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

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

no image

OSコマンドインジェクション

Contents1 OSコマンドインジェクションとは?2 被害3 対策4 参考リンク OSコマンドインジェクションとは? OSに対する命令文を不正に紛れ込ませて攻撃させる手法。 被害 サーバー内のファ …