OpenLiteSpeed logo Open LiteSpeed Web Serverユーザーズマニュアル

App Serverコンテキスト

目次

App Serverコンテキスト

App Serverコンテキスト

説明

App Serverコンテキストは、Ruby Rack/Rails、WSGI、またはNode.jsアプリケーションを簡単に設定する方法を提供します。App Serverコンテキストを通じてアプリケーションを追加するには、URLとアプリケーションのルートディレクトリをマウントするだけで済みます。外部アプリケーションを定義し、404ハンドラを追加し、Rewriteルールを設定するなどの手間は不要です。

URI

説明

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

構文

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

参照

場所

場所

説明

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

デフォルト値:$DOC_ROOT + URI

構文

絶対パス、または$SERVER_ROOT、$VH_ROOT、$DOC_ROOTからの相対パスを指定できます。 $DOC_ROOTはデフォルトの相対パスであり、省略できます。

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

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

参照

URI

バイナリパス

説明

App Serverアプリケーションバイナリの場所です。

アプリケーションタイプ

説明

このコンテキストで使用するアプリケーションのタイプです。Rack/Rails、WSGI、またはNode.jsがサポートされています。

起動ファイル

説明

アプリケーションの起動に使用するファイルの場所です。アプリケーションルートディレクトリからの相対パスで指定します。

デフォルトの起動ファイル名には、Rack/Railsの'config.ru'、WSGIの'wsgi.py'と'passenger_wsgi.py'、NodeJSの'app.js'が含まれます。

構文

パス

実行時モード

説明

アプリケーションを実行するモードを指定します。"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/*のようなワイルドカード "*"を受け入れます。

ヘッダー操作

説明

追加するレスポンス/リクエストヘッダーを指定します。複数のヘッダーディレクティブを1行に1つ追加できます。"NONE"を使用すると、親ヘッダーの継承を無効にできます。ディレクティブが指定されていない場合は'Header'と見なされます。

構文

[Header]|RequestHeader [condition] set|append|merge|add|unset header [value] [early|env=[!]variable]

set Cache-control no-cache
append Cache-control no-store
Header set My-header cust_header_val
RequestHeader set My-req-header cust_req_header_val

ヒント

Information 構文と使用方法は、サポートされる操作について Apacheのmod_headersディレクティブ に似ています。

Information 'Header'ディレクティブは任意であり、他の場所からルールをコピーする際に除外しても残しても問題ありません。

インデックスファイル

説明

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

構文

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

ヒント

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

自動インデックス

説明

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

構文

ラジオボックスから選択

ヒント

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

参照

インデックスファイル, 自動インデックス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の役割の詳細については、 https://fastcgi-archives.github.io/ を参照してください。 。

構文

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

Rewriteを有効にする

説明

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

構文

ラジオボックスから選択

継承を書き直す

説明

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

構文

ラジオボタンから選択

書き換えベース

説明

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

構文

URL

Rewriteルール

説明

バーチャルホストレベルのRewriteルールのリストを指定します。
ここにはドキュメントルートレベルのRewriteルールを追加しないでください。.htaccess由来のドキュメントルートレベルのRewriteルールがある場合は、代わりにURI「/」の静的コンテキストを作成し、そこにRewriteルールを追加してください。
Rewriteルールは1つのRewriteRuleディレクティブで構成され、任意で複数のRewriteCondディレクティブを前に置くことができます。

  • 各ディレクティブは1行だけにしてください。
  • RewriteCondRewriteRuleはApacheのRewriteディレクティブ構文に従います。Apache設定ファイルからRewriteディレクティブをコピーして貼り付けるだけで使用できます。
  • LiteSpeedとApache mod_rewriteの実装には小さな違いがあります:
    • %\{LA-U:variable\}%\{LA-F:variable\}はLiteSpeed Rewriteエンジンでは無視されます。
    • LiteSpeed Rewriteエンジンには2つの新しいサーバー変数があります。%\{CURRENT_URI\}はRewriteエンジンによって処理されている現在のURIを表し、%\{SCRIPT_NAME\}は対応するCGI環境変数と同じ意味を持ちます。
    • LiteSpeed Rewriteエンジンはループを避けるため、[L]フラグに遭遇するとRewriteルールの処理を停止します。一方、Apache mod_rewriteは現在の反復についてのみRewriteルールの処理を停止します。この動作はApache mod_rewriteの[END]フラグに似ています。

LiteSpeedのRewriteエンジン実装はApacheのRewriteエンジン仕様に従います。Rewriteルールの詳細については、Apacheのmod_rewriteドキュメントApacheのURL Rewriteガイドを参照してください。

構文

文字列

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

説明

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

構文

ラジオボタンから選択

GeoLocationルックアップを有効にする

説明

IPジオロケーション検索を有効または無効にするかどうかを指定します。 サーバー、バーチャルホスト、またはコンテキストレベルで設定できます。"Not Set"値を使用すると、IPジオロケーションはデフォルトで無効になります。

構文

ラジオボックスから選択

参照

ヘッダー内のクライアントIPを使用, DBファイルパス,