nginx
差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| nginx [2012/06/05 02:41] – [PHP] nullpon | nginx [2020/05/29 09:30] (現在) – nullpon | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| ====== nginx ====== | ====== nginx ====== | ||
| - | 非同期IOで動作する高速なHTTPサーバ。 | + | 非同期IOで動作する高速なHTTPサーバ。読み方は「えんじんえっくす」 |
| 行 80: | 行 80: | ||
| - | ===== passenger ===== | ||
| - | nginx + passenger でrailsアプリを起動する。 | ||
| - | |||
| - | Ubuntu 10.04では以下のライブラリをインストールする | ||
| - | |||
| - | < | ||
| - | $ sudo aptitude install build-essential | ||
| - | $ sudo aptitude install libcurl4-openssl-dev | ||
| - | </ | ||
| - | |||
| - | rubyやgem、rails等のインストール後、gemでpassengerをインストール。ここではバージョンを明示しているが、特に指定せず最新版を入れると良い。 | ||
| - | |||
| - | < | ||
| - | $ sudo gem install -v=3.0.7 passenger --no-rdoc --no-ri | ||
| - | $ sudo / | ||
| - | </ | ||
| - | |||
| - | とりあえず起動と停止 | ||
| - | |||
| - | < | ||
| - | $ sudo / | ||
| - | $ sudo / | ||
| - | </ | ||
| - | |||
| - | Railsアプリの実行ユーザはAapche版と同じく environment.rb の所有ユーザとなる。 | ||
| ==== nginx.confに設定を追加 ==== | ==== nginx.confに設定を追加 ==== | ||
| 行 267: | 行 242: | ||
| </ | </ | ||
| + | ===== x-accel-redirect ===== | ||
| + | |||
| + | nginx をバックエンドアプリケーションのプロキシとして使っている場合に、アプリにproxyした後にnginxがファイルを返すようにする仕組み。 | ||
| + | |||
| + | 主な用途は認証つきの静的ファイルダウンロード。nginxがファイルを返すためバックエンドアプリケーションに転送負荷をかけずに認証つきのファイルダウンロードを実装できる | ||
| + | |||
| + | アプリ側は権限などのチェックを行い、問題なければ200レスポンスに以下のようなレスポンスヘッダをつける | ||
| + | |||
| + | < | ||
| + | X-Accel-Redirect: | ||
| + | </ | ||
| + | |||
| + | nginx側 | ||
| + | |||
| + | < | ||
| + | // アプリへのプロキシ | ||
| + | location / { | ||
| + | proxy_pass: http:// | ||
| + | } | ||
| + | |||
| + | // x-accel-redirectを受け取る部分 | ||
| + | location /download { | ||
| + | internal; | ||
| + | root / | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ダウンロードさせるファイルは ''/ | ||
nginx.1338864069.txt.gz · 最終更新: by nullpon