Contenu
Le module Fancy Index permet la génération de listes de fichiers, comme le fait le module d'indexation automatique intégré, mais en ajoutant une touche de style. Ceci est possible car le module permet un certain degré de personnalisation du contenu généré :
Ce module est conçu pour fonctionner avec Nginx, un serveur Web open source hautes performances écrit par Igor Sysoev.
Pour les utilisateurs du référentiel stable officiel Nginx, un référentiel de packages supplémentaire avec des modules dynamiques est disponible et fancyindex est inclus.
Installez la configuration du référentiel, puis le package du module :
miam -y install https://extras.getpagespeed.com/release-latest.rpm miam -y installer nginx-module-fancyindex
Chargez ensuite le module dans /etc/nginx/nginx.conf en utilisant :
load_module "modules/ngx_http_fancyindex_module.so" ;
Les utilisateurs peuvent installer Nginx sur macOS avec MacPorts ; fancyindex est inclus :
port sudo installer nginx
Dans la plupart des autres cas, vous aurez besoin des sources de Nginx. Toute version à partir de la série 0.8 devrait fonctionner.
Afin d'utiliser les directives fancyindex_header_
et fancyindex_footer_
vous aurez également besoin du ngx_http_addition_module intégré à Nginx.
Décompressez les sources Nginx :
$ gunzip -c nginx-?.?.?.tar.gz | tar-xvf-
Décompressez les sources du module d'indexation sophistiqué :
$ gunzip -c nginx-fancyindex-?.?.?.tar.gz | tar-xvf-
Accédez au répertoire qui contient les sources Nginx, exécutez le script de configuration avec les options souhaitées et assurez-vous de mettre un indicateur --add-module
pointant vers le répertoire qui contient les sources du module d'indexation sophistiqué :
$ cd nginx-?.?.? $ ./configure --add-module=../nginx-fancyindex-?.?.? [--with-http_addition_module] [options supplémentaires souhaitées]
Depuis la version 0.4.0, le module peut également être construit en tant que module dynamique, en utilisant --add-dynamic-module=…
à la place et load_module "modules/ngx_http_fancyindex_module.so";
dans le fichier de configuration
Créez et installez le logiciel :
$ faire
Et puis, en tant que root
:
# faire installer
Configurez Nginx en utilisant les directives de configuration des modules.
Vous pouvez tester le style intégré par défaut en ajoutant les lignes suivantes dans une section server
de votre fichier de configuration Nginx :
emplacement / { fantaisieindex activé ; # Activer les index sophistiqués. fancyindex_exact_size désactivé ; # Sortie de tailles de fichiers lisibles par l'homme. }
Les thèmes suivants démontrent le niveau de personnalisation qui peut être atteint à l'aide du module :
Syntaxe: | fantaisieindex [ sur | désactivé ] |
---|---|
Défaut: | fantaisieindex désactivé |
Contexte: | http, serveur, emplacement |
Description: | Active ou désactive les index de répertoires sophistiqués. |
Syntaxe: | fancyindex_default_sort [ nom | taille | date | nom_desc | taille_desc | date_desc ] |
---|---|
Défaut: | nom fancyindex_default_sort |
Contexte: | http, serveur, emplacement |
Description: | Définit le critère de tri par défaut. |
Syntaxe: | fancyindex_case_sensitive [ sur | désactivé ] |
---|---|
Défaut: | fancyindex_case_sensitive sur |
Contexte: | http, serveur, emplacement |
Description: | Si activé (paramètre par défaut), le tri par nom sera sensible à la casse. Si elle est désactivée, la casse sera ignorée lors du tri par nom. |
Syntaxe: | fancyindex_directories_first [ sur | désactivé ] |
---|---|
Défaut: | fancyindex_directories_first sur |
Contexte: | http, serveur, emplacement |
Description: | Si activé (paramètre par défaut), regroupe les répertoires et les trie avant tous les fichiers normaux. S'il est désactivé, les répertoires sont triés avec les fichiers. |
Syntaxe: | fantaisieindex_css_href uri |
---|---|
Défaut: | fantaisieindex_css_href "" |
Contexte: | http, serveur, emplacement |
Description: | Permet d'insérer un lien vers une feuille de style CSS dans les listings générés. Le paramètre uri fourni sera inséré tel quel dans une balise HTML . Le lien est inséré après les règles CSS intégrées, vous pouvez donc remplacer les styles par défaut. |
Syntaxe: | fancyindex_exact_size [ sur | désactivé ] |
---|---|
Défaut: | fancyindex_exact_size sur |
Contexte: | http, serveur, emplacement |
Description: | Définit comment représenter la taille des fichiers dans la liste des répertoires : soit avec précision, soit en arrondissant au kilo-octet, au mégaoctet et au gigaoctet. |
Syntaxe: | chemin fancyindex_footer [ sous-requête | locale ] |
---|---|
Défaut: | fantaisieindex_footer "" |
Contexte: | http, serveur, emplacement |
Description: | Spécifie quel fichier doit être inséré au pied des listes de répertoires. S'il est défini sur une chaîne vide, le pied de page par défaut fourni par le module sera envoyé. Le paramètre facultatif indique si le chemin doit être traité comme un URI à charger à l'aide d'une sous-requête (valeur par défaut) ou s'il fait référence à un fichier local . |
Note
L'utilisation de cette directive nécessite le ngx_http_addition_module intégré à Nginx.
Avertissement
Lors de l'insertion d'un en-tête/pied de page personnalisé, une sous-requête sera émise afin que n'importe quelle URL puisse potentiellement être utilisée comme source. Bien que cela fonctionne avec des URL externes, seule l'utilisation d'URL internes est prise en charge. Les URL externes ne sont absolument pas testées et leur utilisation entraînera le blocage de Nginx en attendant la fin de la sous-requête. Si vous pensez que l’en-tête/pied de page externe est un incontournable pour vous, faites-le moi savoir.
Syntaxe: | chemin fancyindex_header [ sous-requête | locale ] |
---|---|
Défaut: | fantaisieindex_header "" |
Contexte: | http, serveur, emplacement |
Description: | Spécifie quel fichier doit être inséré en tête des listes de répertoires. S'il est défini sur une chaîne vide, l'en-tête par défaut fourni par le module sera envoyé. Le paramètre facultatif indique si le chemin doit être traité comme un URI à charger à l'aide d'une sous-requête (valeur par défaut) ou s'il fait référence à un fichier local . |
Note
L'utilisation de cette directive nécessite le ngx_http_addition_module intégré à Nginx.
Syntaxe: | fancyindex_show_path [ sur | désactivé ] |
---|---|
Défaut: | fancyindex_show_path sur |
Contexte: | http, serveur, emplacement |
Description: | Indique s'il faut ou non afficher le chemin et la balise de fermeture après l'en-tête. Ceci est utile lorsque vous souhaitez gérer l'affichage du chemin avec un script PHP par exemple. |
Avertissement
Cette directive ne peut être désactivée que si un en-tête personnalisé est fourni à l'aide de fancyindex_header.
Syntaxe: | fancyindex_show_dotfiles [ sur | désactivé ] |
---|---|
Défaut: | Fancyindex_show_dotfiles désactivé |
Contexte: | http, serveur, emplacement |
Description: | S'il faut lister les fichiers précédés d'un point. La convention normale est de les masquer. |
Syntaxe: | fancyindex_ignore chaîne1 [chaîne2 [... chaîneN]] |
---|---|
Défaut: | Aucun défaut. |
Contexte: | http, serveur, emplacement |
Description: | Spécifie une liste de noms de fichiers qui ne seront pas affichés dans les listes générées. Si Nginx a été construit avec le support PCRE, les chaînes sont interprétées comme des expressions régulières. |
Syntaxe: | fancyindex_hide_symlinks [ sur | désactivé ] |
---|---|
Défaut: | fancyindex_hide_symlinks désactivé |
Contexte: | http, serveur, emplacement |
Description: | Lorsqu'elles sont activées, les listes générées ne contiendront pas de liens symboliques. |
Syntaxe: | fancyindex_hide_parent_dir [ sur | désactivé ] |
---|---|
Défaut: | fancyindex_hide_parent_dir désactivé |
Contexte: | http, serveur, emplacement |
Description: | Lorsqu'il est activé, il n'affichera pas le répertoire parent. |
Syntaxe: | fancyindex_localtime [ sur | désactivé ] |
---|---|
Défaut: | fancyindex_localtime off |
Contexte: | http, serveur, emplacement |
Description: | Permet d'afficher les heures des fichiers en heure locale. La valeur par défaut est « off » (heure GMT). |
Syntaxe: | chaîne fancyindex_time_format |
---|---|
Défaut: | fancyindex_time_format "%Y-%b-%d %H:%M" |
Contexte: | http, serveur, emplacement |
Description: | Chaîne de format utilisée pour les horodatages. Les spécificateurs de format sont un sous-ensemble de ceux pris en charge par la fonction strftime et le comportement est indépendant des paramètres régionaux (par exemple, les noms de jour et de mois sont toujours en anglais). Les formats pris en charge sont :
|