通常のファイルサーバとしての機能を提供するためのサーブレット。
FileHandler.new(server, root, options={}, default=Config::FileHandler)
FileHandler サーブレットを生成する。root はサーブレットにルートディレクトリ として認識させる、ローカルのファイルシステムのディレクトリを文字列で与える。
configは設定を保存したハッシュ、 defaultにはデフォルトの設定を保存したハッシュを与える。 デフォルト値はそれぞれ{}とWEBrick::Config::FileHandler。
WEBrick::HTTPServlet::AbstractServlet
WEBrick::HTTPServlet::FileHandler.newに与えるオプションの初期値。
FileHandler = { :NondisclosureName => [".ht*", "*~"], :FancyIndexing => false, :HandlerTable => {}, :HandlerCallback => nil, :DirectoryCallback => nil, :FileCallback => nil, :UserDir => "public_html", :AcceptableLanguages => [] # ["en", "ja", ... ] }
コンテンツの言語を選択するオプション。設定値は文字列の配列。
クライアントからのリクエストに含まれるAccept-Languageの内容がfrで、 かつ:AcceptableLanguagesには['ja', 'en']が設定されている場合、 WEBrick::HTTPServlet::FileHandlerは以下の順番でファイルを探す。
クライアントがディレクトリをリクエストしたが表示するファイルが無い場合の挙動を決める。 値は真偽値。
trueならば、代わりにファイル一覧を表示する。 falseならばエラー(403 Forbidden)となる。
インデックスに表示したくないファイルの指定。値は文字列の配列。
表示したくないファイルをワイルドカードで指定する。
ユーザ毎のドキュメントルートのディレクトリ名。値は文字列。
ユーザfooのホームディレクトリが/home/fooで、:UserDirにpublic_htmlを設定した場合、 クライアントから/~foo/index.htmlがリクエストされると/home/foo/public_html/index.htmlの内容を表示される。
この設定を有効にするには以下の条件が必要。