コンテンツ
Fancy Index モジュールを使用すると、組み込みの autoindex モジュールと同様にファイル リストの生成が可能になりますが、スタイルが追加されます。これが可能なのは、このモジュールでは生成されたコンテンツをある程度カスタマイズできるためです。
このモジュールは、Igor Sysoev によって作成された高性能オープンソース Web サーバーである Nginx で動作するように設計されています。
公式の安定した Nginx リポジトリのユーザーは、動的モジュールを含む追加のパッケージ リポジトリが利用可能で、fancyindex が含まれています。
リポジトリ設定をインストールしてから、モジュール パッケージをインストールします。
yum -y インストール https://extras.getpagespeed.com/release-latest.rpm yum -y nginx-module-fancyindex をインストールします
次に、以下を使用して /etc/nginx/nginx.conf にモジュールをロードします。
load_module "モジュール/ngx_http_fancyindex_module.so";
ユーザーは MacPorts を使用して macOS に Nginx をインストールできます。 fancyindex が含まれています:
sudoポートでnginxをインストール
他のほとんどの場合、Nginx のソースが必要になります。 0.8 シリーズ以降のどのバージョンでも動作するはずです。
fancyindex_header_
とfancyindex_footer_
ディレクティブを使用するには、Nginx に組み込まれている ngx_http_addition_module も必要になります。
Nginx ソースを解凍します。
$ Gunzip -c nginx-?.?.?.tar.gz | tar -xvf -
派手なインデックス作成モジュールのソースを解凍します。
$ Gunzip -c nginx-fancyindex-?.?.?.tar.gz | tar -xvf -
Nginx ソースが含まれるディレクトリに移動し、必要なオプションを指定して構成スクリプトを実行し、派手なインデックス作成モジュールのソースが含まれるディレクトリを指す--add-module
フラグを必ず設定します。
$ cd nginx-?.?.? $ ./configure --add-module=../nginx-fancyindex-?.?.? [--with-http_addition_module] [追加の必要なオプション]
バージョン 0.4.0 以降、代わりに--add-dynamic-module=…
とload_module "modules/ngx_http_fancyindex_module.so";
を使用して、モジュールを動的モジュールとして構築することもできます。設定ファイル内で
ソフトウェアをビルドしてインストールします。
$メイク
そして、 root
として次のようにします。
# インストールを行う
モジュールの構成ディレクティブを使用して Nginx を構成します。
Nginx 構成ファイルのserver
セクションに次の行を追加することで、デフォルトの組み込みスタイルをテストできます。
位置 / { ファンシーインデックスがオン。 # 派手なインデックスを有効にします。 fancyindex_exact_size オフ; # 人間が判読できるファイル サイズを出力します。 }
次のテーマは、モジュールを使用して達成できるカスタマイズのレベルを示しています。
構文: | ファンシーインデックス[上|オフ] |
---|---|
デフォルト: | ファンシーインデックスオフ |
コンテクスト: | http、サーバー、場所 |
説明: | 派手なディレクトリインデックスを有効または無効にします。 |
構文: | fancyindex_default_sort [名前|サイズ|日付|名前_説明|サイズ説明|日付_説明] |
---|---|
デフォルト: | fancyindex_default_sort 名 |
コンテクスト: | http、サーバー、場所 |
説明: | デフォルトでの並べ替え基準を定義します。 |
構文: | fancyindex_case_sensitive [上|オフ] |
---|---|
デフォルト: | fancyindex_case_sensitive で |
コンテクスト: | http、サーバー、場所 |
説明: | 有効にした場合 (デフォルト設定)、名前による並べ替えでは大文字と小文字が区別されます。無効にすると、名前で並べ替えるときに大文字と小文字が無視されます。 |
構文: | fancyindex_directories_first [上|オフ] |
---|---|
デフォルト: | fancyindex_directories_first で |
コンテクスト: | http、サーバー、場所 |
説明: | 有効にすると (デフォルト設定)、ディレクトリがグループ化され、すべての通常のファイルの前に並べ替えられます。無効にすると、ディレクトリはファイルと一緒に並べ替えられます。 |
構文: | fancyindex_css_href uri |
---|---|
デフォルト: | fancyindex_css_href "" |
コンテクスト: | http、サーバー、場所 |
説明: | 生成されたリストに CSS スタイル シートへのリンクを挿入できるようにします。指定されたuriパラメータは、 <link> HTML タグにそのまま挿入されます。リンクは組み込みの CSS ルールの後に挿入されるため、デフォルトのスタイルをオーバーライドできます。 |
構文: | fancyindex_exact_size [上|オフ] |
---|---|
デフォルト: | fancyindex_exact_size 上 |
コンテクスト: | http、サーバー、場所 |
説明: | ディレクトリ リスト内のファイル サイズを正確に表すか、キロバイト、メガバイト、ギガバイトに四捨五入して表す方法を定義します。 |
構文: | fancyindex_footer パス[サブリクエスト|地元] |
---|---|
デフォルト: | fancyindex_footer "" |
コンテクスト: | http、サーバー、場所 |
説明: | ディレクトリリストの最後に挿入するファイルを指定します。空の文字列に設定すると、モジュールによって提供されるデフォルトのフッターが送信されます。オプションのパラメーターは、パスをサブリクエストを使用してロードする URI として扱うか (デフォルト)、それともローカルファイルを参照するかを示します。 |
注記
このディレクティブを使用するには、Nginx に組み込まれている ngx_http_addition_module が必要です。
警告
カスタムのヘッダー/フッターを挿入すると、サブリクエストが発行されるため、潜在的に任意の URL をソースとして使用できます。外部 URL も使用できますが、内部 URL の使用のみがサポートされています。外部 URL はまったくテストされていないため、それらを使用すると、サブリクエストが完了するまで待機している間に Nginx がブロックされます。外部ヘッダー/フッターが必須だと思われる場合は、お知らせください。
構文: | fancyindex_header パス[サブリクエスト|地元] |
---|---|
デフォルト: | fancyindex_header "" |
コンテクスト: | http、サーバー、場所 |
説明: | ディレクトリリストの先頭にどのファイルを挿入するかを指定します。空の文字列に設定すると、モジュールによって提供されるデフォルトのヘッダーが送信されます。オプションのパラメーターは、パスをサブリクエストを使用してロードする URI として扱うか (デフォルト)、それともローカルファイルを参照するかを示します。 |
注記
このディレクティブを使用するには、Nginx に組み込まれている ngx_http_addition_module が必要です。
構文: | fancyindex_show_path [上|オフ] |
---|---|
デフォルト: | fancyindex_show_path 上の |
コンテクスト: | http、サーバー、場所 |
説明: | ヘッダーの後にパスと終了タグ</h1>を出力するかどうか。これは、たとえば PHP スクリプトでパス表示を処理したい場合に便利です。 |
警告
このディレクティブは、fancyindex_header を使用してカスタム ヘッダーが提供されている場合にのみオフにできます。
構文: | fancyindex_show_dotfiles [上|オフ] |
---|---|
デフォルト: | fancyindex_show_dotfiles オフ |
コンテクスト: | http、サーバー、場所 |
説明: | 先頭にドットが付いているファイルをリストするかどうか。通常の慣例では、これらは非表示になります。 |
構文: | fancyindex_ignore string1 [string2 [... stringN]] |
---|---|
デフォルト: | デフォルトはありません。 |
コンテクスト: | http、サーバー、場所 |
説明: | 生成されるリストに表示されないファイル名のリストを指定します。 Nginx が PCRE サポートを使用して構築されている場合、文字列は正規表現として解釈されます。 |
構文: | fancyindex_hide_symlinks [上|オフ] |
---|---|
デフォルト: | fancyindex_hide_symlinks オフ |
コンテクスト: | http、サーバー、場所 |
説明: | 有効にすると、生成されたリストにはシンボリック リンクが含まれなくなります。 |
構文: | fancyindex_hide_parent_dir [上|オフ] |
---|---|
デフォルト: | fancyindex_hide_parent_dir オフ |
コンテクスト: | http、サーバー、場所 |
説明: | 有効にすると、親ディレクトリは表示されません。 |
構文: | fancyindex_localtime [上|オフ] |
---|---|
デフォルト: | fancyindex_localtime オフ |
コンテクスト: | http、サーバー、場所 |
説明: | ファイル時間を現地時間として表示できるようにします。デフォルトは「オフ」(GMT 時間)です。 |
構文: | fancyindex_time_format文字列 |
---|---|
デフォルト: | fancyindex_time_format "%Y-%b-%d %H:%M" |
コンテクスト: | http、サーバー、場所 |
説明: | タイムスタンプに使用される形式文字列。書式指定子は strftime 関数でサポートされているもののサブセットであり、動作はロケールに依存しません (たとえば、日と月の名前は常に英語になります)。サポートされている形式は次のとおりです。
|