关于Nginx的总结(入门篇)
简要概述
-
- nginx(エンジンエックス) = Apacheなどと同様のWebサーバ
-
- フリーかつオープンソース(BSD。ただし企業主導で開発している)
-
- 実装はCで、マルチプラットフォーム対応
- C10Kが問題視された頃から、高速処理できるサーバとして着目された
特征
完整功能的HTTP服务器
-
- ロギング, 仮想サーバ, SSL, rewrite, アクセスコントロール, KeepAlive, HTTP/2などはデフォルトで使える
- Apacheと同様に、モジュールにより拡張可能
事件驱动模式
-
- 単一のプロセスがリクエストをどんどこ捌いていくイメージ
-
- Apacheのように、リクエストに対してプロセスあるいはスレッドの割当が不要なので高速、省メモリ
-
- ただしメモリ空間は全リクエスト共有になるため、それに関連してアプリケーションサーバとしての利用に制限がある
- シングルプロセスなので、ひとつの処理に時間がかかると他のレスポンスに影響する
可以用作反向代理(缓存服务器)
-
- SSLアクセラレータ、ロードバランサとしても動作する
- SMTPなどHTTP以外のプロトコルのロードバランスも可能
不作为应用服务器运行
-
- Webアプリをnginxが直接動かすことはできない
-
- その場合は別途Appサーバを別途用意し、nginxはそのリバースプロキシとして振舞う
- AppサーバとnginxはFastCGIやPassengerで接続される
其他
nginx-biuldという専用のビルドツールがあり、依存性解決やバージョン管理が容易
設定変更時に再起動不要
引入方式
引导方法
安装
可以通过软件包管理器进行安装
$ brew install nginx
$ sudo yum install nginx
基本命令
# 起動
$ nginx
# 停止
$ nginx -s stop
# 設定の再読み込み
$ nginx -s reload
# 設定ファイルのテスト
$ nginx -t
设定
-
- brewでOSXにインストールした場合、設定ファイルは/usr/local/etc/nginx/にあった
設定ファイルは復数あるが、基本的にはnginx.confをいじればよさそう
file
desc
nginx.conf
Nginx全般の設定
mime.types
MIMEタイプと拡張子の関連
fastcgi_params
FastCGI設定
scgi_params
SCGI設定
uwsgi_params
uWSGI設定
設定ファイルの基本構文は簡単そう
コメントは#
ディレクティブは ディレクティブ名 { … }
各プロパティは プロパティ 値 ;
请你参考这个建议。
对下面的内容进行中文本地化概述/比较:
-
- Wikipedia – nginx
-
- Qiita – Apacheとnginxどちらを採用すべきかメリット・デメリット比較
-
- Qiita – apacheとnginxの比較表とベンチマーク
-
- 金沢ではたらく新米エンジニアの日記 nginxってよく聞くけどApacheとどう違うかよくわからないので調べてみる。
- @IT – これから始める人のためのNginx
使用/应用方法
-
- Qiita – nginx コマンド超シンプル早見表
- インフラエンジニアWay – nginx連載3回目: nginxの設定、その1