Utiliser le .htaccess pour "ouvrir" un répertoire en dowload
Posté : dim. 22 mars 2020 15:38
Bonjour
Je me lance en espérant que c'est clair ... Si vous avez des questions et des remarques pour l'améliorer surtout vous n'hésitez pas ...
Comment créer un répertoire au sein d'un site web permettant de télécharger (dowload) des fichiers par les utilisateurs ?
Je me lance en espérant que c'est clair ... Si vous avez des questions et des remarques pour l'améliorer surtout vous n'hésitez pas ...
Comment créer un répertoire au sein d'un site web permettant de télécharger (dowload) des fichiers par les utilisateurs ?
- A la racine du site, créer un nouveau système de répertorie à partir de la racine du site et donner à chaque dossiers les droits CHMOD 0644
Par exemple ftp/pub/monreptoire - On va se servir de la structure du répertoire pour organiser les fichiers
dans /ftp/pub on va stocker les images, les scripts,
dans ftp/pub/monrépertoire on trouvera les fichiers offerts en téléchargement
Dans les répertoires ftp et ftp/pub créer un fichier index.php afin de bloquer l'affichage du contenu
Si vous générez un fichier vide => page blanche
... Perso je préfère mettre une redirection vers l'accueil du site - créer un fichier index.php avec le code suivant (remplacer url du site par l'url de votre site)
Code : Tout sélectionner
<?php header('Location: url du site'); exit(); ?>
- Dans ce répertoire que vous venez de créer,
- Créer un fichier entête.html qui va contenir les entêtes HTML ainsi qu'une partie supérieure de la section body
Code : Tout sélectionner
<html> <head> <title>Titre de la page</title> <meta name="description" content="Descirption de la page"> <meta name="title" content="Titre de la page dans l'onglet"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> <meta http-equiv="Content-Language" content="fr" /> <base target="_blank"> </head> <body> <div style="min-width:200px; max-width:640px; loat:left; " > <center> <a href= "url de votre site" title="Nom du site"> <img src="/ftp/pub/logo-amis.svg" alt="logo de du site" title="texte de remplacement" style="width: 288px; height:240px;"> </a> </center> </div> <div style="min-width:200px; max-width:640px; clear:both; " ><center> <h1 style="width: 100%;"> Titre de la page en balise H1 pour l'indexation </h1> <p> <b><i> Texte </i></b> </p> </center> <br /> <hr> </body> </html>
- Créer un fichier pied.htm pour le pied de page
Code : Tout sélectionner
<html> <head> <title>Titre de la page</title> <meta name="description" content="Description du site"> <meta name="title" content="Titire de la page"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> <meta http-equiv="Content-Language" content="fr" /> <link rel="stylesheet" href="/ftp/pub/back.css"> <script>javascript"> function closeWindow() { window.open('','_parent',''); window.close(); } </script> </head> <body> <div style="min-width:320px; max-width:640px;" > <h3> <b><i>Les icones sont cliquables!</i></b> </h3> <hr> <h4> <b>Texte libre</b> </h4> <h5> <b><u>Application de téléchargement</u></b> développée par </a> <p><i>Version de l'application de téléchargement : DL_1.0.3-c </br>mise en place le 11/12/2019</i><p> </h5> </div> </body> </html>
- créer un fichier .htaccess
- Insérer le code suivant afin de protéger tous les fichiers de ce répertoire
Code : Tout sélectionner
# Protection Acces <Files ~ "^.*\.([Hh][Tt][Aa])"> order allow,deny deny from all </Files> # Fin protection
- Définir le fichier d'ouverture par défaut
Code : Tout sélectionner
#ouverture par defaut DirectoryIndex page_par_defaut.html #fin ouverture par defaut
- Définir les paramètres de la page
Code : Tout sélectionner
# DIRECTORY CUSTOMIZATION <IfModule mod_autoindex.c> #Autorise l'affichage du répetoire Options +Indexes IndexOptions FancyIndexing #Forcage utf 8 AddDefaultCharset utf-8 #Entête et Pied de page HeaderName /ftp/pub/monrepertoire/entete.html ReadmeName /ftp/pub/monrepertoire/pied.html #paramètres d'affichage IndexOptions IgnoreCase #Ordre d'affichage IndexOrderDefault Ascending Name IndexOptions FancyIndexing FoldersFirst #Lageur des colonnes IndexOptions NameWidth=* IndexOptions DescriptionWidth=* IndexOptions HTMLTable #Réglage de l'affichage #Supprime l'affichage de la description #IndexOptions FancyIndexing SuppressDescription #Supprime l'affichage de la taille IndexOptions FancyIndexing SuppressSize #Supprime les options de tri croissant /décroissant IndexOptions FancyIndexing SuppressColumnSorting #Supprime l'affichage de la date #IndexOptions FancyIndexing SuppressLastmodified #Ignore l'affichage des fichiers IndexIgnore *.html *.txt *.ico #Supprime l'affichage des lignes horizontales IndexOptions FancyIndexing SuppressRules #Icones en lien IndexOptions FancyIndexing IconsAreLinks #Ajout d'une description AddDescription "texte de description associé au fichier "Liste_1*.pdf AddDescription "Liste par grandes familles de Produit "Liste_2*.pdf AddDescription "Ensemble des deux listes au format ZIP" Listes*.zip AddDescription "A LIRE avant tout téléchargement" *.txt *.htm #Icones personalisées AddIcon (IMG,/ftp/pub/picture.png) .gif .jpg .png AddIcon (MSG,/ftp/pub/text.png) .html .doc AddIcon (TXT,/ftp/pub/attention.gif) .htm .txt AddIcon (ZIP,/ftp/pub/zip.gif) .zip .rar .gz AddIcon (PDF,/ftp/pub/pdf.gif) .pdf AddIcon /ftp/pub/folder.png ^^DIRECTORY^^ DefaultIcon /ftp/pub/inconnu.png </IfModule>
- Insérer le code suivant afin de protéger tous les fichiers de ce répertoire
- créer un fichier index.php avec le code suivant (remplacer url du site par l'url de votre site)Ce fichier va rediriger toutes les demandes non explicites vers l'accueil du forum
Code : Tout sélectionner
<?php header('Location: url du site'); exit(); ?>
- Créer un fichier entête.html qui va contenir les entêtes HTML ainsi qu'une partie supérieure de la section body
- Si vous souhaitez protéger le code source de votre page, il suffit simplement d’utiliser snapbuilder
La méthode est simple ...
Vous afficher le répertorie sur votre navigateur préféré et vous récupérez le code source de la page
Vous faire un copier/coller du code obtenu dans obfuscator
Celui-ci va vous donner un script qu'il suffira alors de coller dans la page de démarrage par défaut définie dans le .htaccess
Dans cet exemple page_par_defaut.html