nginx
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
nginx [2013/05/27 09:02] – [nginx] nullpon | nginx [2020/05/29 09:30] (現在) – nullpon | ||
---|---|---|---|
行 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.1369645330.txt.gz · 最終更新: 2013/05/27 09:02 by nullpon