X-Accel

概要

X-accel はバックエンドから返されたヘッダによって決定される場所への内部的なリダイレクトを許可します。

This allows you to handle authentication, logging or whatever else you please in your backend and then have NGINX handle serving the contents from redirected location to the end user, thus freeing up the backend to handle other requests. この機能は一般的にX-Sendfileとして知られています。

この機能は、ディレクティブに依らず特別な方法でupstreamからのヘッダを処理するという点で標準のNGINXモジュールと少し異なります。URLを付けてx-accel.redirect ヘッダを送信することで動作します。NGINX はこのURIが通常のリクエストであったかのようにlocationに対して適合します。そして定義されたroot + ヘッダ内で渡されたURI に適合するlocationを提供するでしょう。

Example configuration, notice the difference between alias and root.

# Will serve /var/www/files/myfile.tar.gz
# When passed URI /protected_files/myfile.tar.gz
location /protected_files {
  internal;
  alias /var/www/files;
}

# Will serve /var/www/protected_files/myfile.tar.gz
# When passed URI /protected_files/myfile.tar.gz
location /protected_files {
  internal;
  root /var/www;
}

他のサーバへプロキシすることもできます。

location /protected_files {
  internal;
  proxy_pass http://127.0.0.2;
}

特別なヘッダ

X-Accel-Redirect

構文:X-Accel-Redirect uri
デフォルト:X-Accel-Redirect void

NGINXが提供するURIを設定する

X-Accel-Buffering

構文:X-Accel-Buffering [yes|no]
デフォルト:X-Accel-Buffering yes

この接続のためのproxyバッファリングを設定する。これを"no"に設定すると、CometとHTTPストリーミングアプリケーションに適したバッファ無し応答を許可します。これを"yes"に設定すると、小津王をキャッシュできるようになるでしょう。

X-Accel-Charset

構文:X-Accel-Charset charset
デフォルト:X-Accel-Charset utf-8

ファイルのcharsetを設定します。

X-Accel-Expires

構文:X-Accel-Expires [off|seconds]
デフォルト:X-Accel-Expires off

使用された場合は、内部的なNGINXキャッシュ内のファイルの有効期限を設定します。

X-Accel-Limit-Rate

構文:X-Accel-Limit-Rate bytes [bytes|off]
デフォルト:X-Accel-Limit-Rate off

この1つのリクエストのためのレート制限を設定します。Off は制限無しを意味します。

TOP
inserted by FC2 system