Rack/Railsコンテキスト

目次

Rack/Railsコンテキスト

URI | ロケーション | 実行時モード | 最大接続数 | 環境 | 有効期限を有効にする | デフォルトの期限 | タイプ別の期限 | Extra Headers | インデックスファイル | 自動インデックス | レルム | 認証名 | 必要(許可ユーザー/グループ) | アクセス許可 | アクセス拒否 | 承認者 | デフォルトの文字セットを追加 | カスタマイズされたデフォルトの文字セット | Rewriteを有効にする | 継承を書き直す | 書き換えベース | Rewriteルール | IPジオロケーションを有効にする

Rack/Railsコンテキスト

説明

Rack/Railsコンテキストは、Ruby Rack/Railsアプリケーションを簡単に設定する方法を提供します。 Rack/RailsアプリケーションをRack/Railsコンテキストに追加するには、URLとアプリケーションのルートディレクトリのみをマウントする必要があります。 外部アプリケーションを定義したり、404ハンドラを追加したり、ルールを書き直すなど、すべての問題を解決する必要はありませ

URI

説明

このコンテキストのURIを指定します。

構文

URIは、プレーンURI( "/"で始まる)またはPerl互換の正規表現URI( "exp:"で始まる)にすることができます。 プレーンURIが "/"で終わる場合、このコンテキストはこのURIの下にすべてのサブURIを含みます。 コンテキストがファイルシステム上のディレクトリにマップされている場合は、末尾に「/」を追加する必要があります。

参照

ロケーション

ロケーション

説明

ファイルシステム内のこのコンテキストの対応する場所を指定します。

構文

$SERVER_ROOT、$VH_ROOT、または$DOC_ROOTに関連する絶対パスまたは相対パスにすることができます。 $DOC_ROOTはデフォルトの相対パスであり省略することができます。

URIが正規表現であれば、一致した部分文字列を使用して "Root"文字列を形成することができます。 一致した部分文字列は、値 "$1"-"$9"で参照できます。 一致した文字列全体を参照するには、 "$0"と "&"を使用できます。 さらに、クエリ文字列は、 "?" その後にクエリ文字列が続きます。 注意してください。 "&"はクエリ文字列で "\&"としてエスケープする必要があります。

ロケーション/examples/のような単純なURIは、/home/john/web_examplesに設定すると、リクエスト "/examples/foo/bar.html"がファイル "/home/john/web_examples/foo/bar.html"にマップされます。
Apacheのmod_userdirをシミュレートするには、 URIをexp: ^/~([A-Za-z0-9]+)(.*)に設定し, set ロケーション/home/$1/public_html$2に設定します。 これらの設定では、URIの/~john/foo/bar.htmlのリクエストは/home/john/public_html/foo/bar.htmlファイルにマップされます。

参照

URI

実行時モード

説明

Rack/Railsが "Development"、"Production"、又は"Staging"のいずれのモードで実行されるかを指定します。 デフォルトは "Production"です。

構文

ドロップダウンリストから選択

最大接続数

説明

サーバーと外部アプリケーションの間で確立できる同時接続の最大数を指定します。 この設定は、外部アプリケーションによって同時に処理できる要求の数を制御しますが、実際の制限は外部アプリケーション自体によっても異なります。 この値を高く設定すると、外部アプリケーションの速度が不十分であるか、多数の同時要求に対応できない場合に役立ちません。

構文

整数

ヒント

[パフォーマンス]高い値を設定しても、高いパフォーマンスに直接変換されるわけではありません。 制限を外部アプリケーションに負荷をかけない値に設定すると、最高のパフォーマンス/スループットが得られます。

環境

説明

外部アプリケーション用の追加の環境変数を指定します。

構文

Key=value. 複数の変数は "ENTER"で区切ることができます。

有効期限を有効にする

説明

静的ファイルのExpiresヘッダーを生成するかどうかを指定します。 有効にすると、デフォルトの期限タイプ別の期限に基づいてExpiresヘッダーが生成されます。

これは、サーバー、バーチャルホスト、コンテキストレベルで設定できます。 下位レベルの設定は上位レベルの設定を上書きします。 コンテキスト設定はバーチャルホストの設定を上書きし、バーチャルホストの設定はサーバーの設定を上書きします。

構文

ラジオボックスから選択

デフォルトの期限

説明

Expiresヘッダー生成のデフォルト設定を指定します。 この設定は、有効期限を有効にするが "はい"に設定されているときに有効になります。 タイプ別の期限で上書きできます。 すべてのページのExpiresヘッダーが生成されるため、必要がない限り、このデフォルトをサーバーまたはバーチャルホストレベルで設定しないでください。 ほとんどの場合、これは頻繁に変更されない特定のディレクトリのコンテキストレベルで設定する必要があります。 デフォルト設定がない場合、タイプ別の期限で指定されていないタイプに対してExpiresヘッダーは生成されません。

構文

A|M秒
このファイルは、基本時間(A | M)に指定された秒を加えた後に期限切れになります。 ベース時刻 "A"はクライアントのアクセス時間に値を設定し、 "M"はファイルの最終変更時刻を設定します。

タイプ別の期限

説明

各MIMEタイプのExpiresヘッダー設定を指定します。

構文

"MIME-type=A|Mseconds"のカンマで区切られたリスト。 このファイルは、基本時間(A|M)に指定された秒を加えた後に期限切れになります。

ベース時刻 "A"はクライアントのアクセス時間に値を設定し、 "M"はファイルの最終変更時刻を設定します。 MIMEタイプはimage/*のようなワイルドカード "*"を受け入れます。

Extra Headers

説明

追加される余分な応答ヘッダーを指定します。 1行に1つのヘッダーを追加できます。 親コンテンツから継承したヘッダーを無効にするには、"NONE"を入力します。

構文

各行に "[HeaderName]: [HeaderValue]"

Cache-control: no-cache, no-store
My-header: Custom header value

インデックスファイル

説明

URLがディレクトリにマップされたときに順番に検索されるインデックスファイルの名前を指定します。 サーバー、バーチャルホスト、コンテキストレベルでカスタマイズできます。

構文

インデックスファイル名のカンマ区切りリスト。

ヒント

[パフォーマンス]必要なインデックスファイルのみを設定します。

自動インデックス

説明

インデックスファイルにリストされている索引ファイルがディレクトリで使用できないときに、その場でディレクトリー索引を生成するかどうかを指定します。 このオプションは、バーチャルホストおよびコンテキストレベルでカスタマイズ可能で、明示的に上書きされるまでディレクトリツリーに沿って継承されます。 生成された索引ページをカスタマイズできます。 オンラインウィキHow-tosを確認してください。

構文

ラジオボックスから選択

ヒント

[セキュリティ]可能であれば、自動インデックスをオフにして、機密データを漏らさないようにすることをお勧めします。

参照

インデックスファイル, 自動インデックス URI

レルム

説明

このコンテキストの認可レルムを指定します。 このコンテキストにアクセスするには、有効なユーザー名とパスワードを指定する必要があります。 認可レルムバーチャルホストのセキュリティセクションに設定されています。 この設定では、各レルムのレルム名が使用されます。

構文

選択

認証名

説明

現在のコンテキストの認証レルムの代替名を指定します。 指定しない場合、元のレルム名が使用されます。 認証名は、ブラウザのログインポップアップに表示されます。

構文

テキスト

必要(許可ユーザー/グループ)

説明

このコンテキストにアクセスできるユーザー/グループを指定します。 これにより、複数のコンテキストにわたって1つのユーザー/グループデータベース(レルムで指定)を使用できますが、そのデータベースの特定のユーザー/グループのみがこのコンテキストにアクセスできます。

構文

構文はApache Requireディレクティブと互換性があります。 例えば:

  • user username [username ...]
    リストされたユーザーだけがこのコンテキストにアクセスできます。
  • group groupid [groupid ...]
    リストされたグループに属するユーザーのみがこのコンテキストにアクセスできます。
この設定を指定しないと、すべての有効なユーザーがこのリソースにアクセスできます。

アクセス許可

説明

このコンテキストでリソースにアクセスできるIPまたはサブネットワークを指定します。 アクセス拒否とサーバー/バーチャルホスト・レベルのアクセス制御とともに、アクセシビリティは、クライアントのIPアドレスが入る最小の範囲によって決まります。

構文

IP/サブネットワークのカンマ区切りリスト。

サブネットワークは以下のように書くことができます 192.168.1.0/255.255.255.0, 192.168.1, 又は 192.168.1.*.

アクセス拒否

説明

このコンテキストでリソースにアクセスできないIPまたはサブネットワークを指定します。 アクセス許可とサーバー/バーチャルホストレベルのアクセス制御とともに、アクセシビリティはクライアントのIPアドレスが入る最小の範囲で決まります。

構文

IP/サブネットワークのカンマ区切りリスト。

サブネットワークは以下のように書くことができます 192.168.1.0/255.255.255.0, 192.168.1, 又は 192.168.1.*.

承認者

説明

権限のある/権限のないかの決定を生成するために使用できる外部アプリケーションを指定します。 現在、FastCGI Authorizerのみが使用可能です。 FastCGI Authorizerの役割の詳細については、http://www.fastcgi.comを参照してください。 。

構文

ドロップダウンリストから選択

デフォルトの文字セットを追加

説明

コンテンツタイプが "text/html"または "text/plain"のいずれかのパラメータがない場合、文字セットタグを "Content-Type"レスポンスヘッダーに追加するかどうかを指定します。 Offに設定すると、この機能は無効になります。 Onに設定すると、カスタマイズされたデフォルトの文字セットで指定された文字セットまたはデフォルトの "iso-8859-1"のいずれかが追加されます。

構文

ラジオボックスから選択

Rewriteを有効にする

説明

LiteSpeedのURL書き換えエンジンを有効にするかどうかを指定します。 このオプションは、バーチャルホストまたはコンテキストレベルでカスタマイズでき、明示的に上書きされるまでディレクトリツリーに沿って継承されます。

構文

ラジオボックスから選択

継承を書き直す

説明

親コンテキストから書き換えルールを継承するかどうかを指定します。 書き換えが有効で継承されていない場合は、このコンテキストで定義されている書き換えのベースルールと書き換えルールが使用されます。

構文

ラジオボックスから選択

書き換えベース

説明

書き換えルールのベースURLを指定します。

構文

URL

Rewriteルール

説明

バーチャルホストまたはコンテキスト・レベルでの書き換えルールのリストを指定します。 書き換えルールは、RewriteRuleディレクティブから構成され、オプションとして複数のRewriteCondディレクティブが前に付いています。

  • 各ディレクティブは1行だけを取る必要があります。
  • RewriteCondRewriteRuleは、Apacheのリライト命令構文に従います。 あなたのApache設定ファイルから書き換え命令文をコピー&ペーストするだけです。
  • LiteSpeedとApache mod_rewriteには小さな違いがあります 実装:
       
    • LiteSpeed書き換えエンジンでは、%\ {LA-U:変数\} %\ {LA-F:変数\} は無視されます
    • LiteSpeed書き換えエンジンに2つの新しいサーバー変数が追加されました。: LiteSpeed書き換えエンジンに2つの新しいサーバー変数が追加されました。 %\{CURRENT_URI\}は、書き換えエンジンによって処理されている現在のURIを表し、%\{SCRIPT_NAME\}は対応するCGI環境変数と同じ意味を持ちます。
LiteSpeedのリライトエンジンの実装は、Apacheのリライトエンジンの仕様に従います。 書き換えルールの詳細については、Apacheのmod_rewriteドキュメントApacheのURL書き換えガイドを参照してください。

構文

文字列