Les fichiers privés sont téléversés par défaut vers un dossier propre à chaque propriétaire nommé de manière cryptique. Cependant, si quelqu’un arrive à connaitre l’URL d’un fichier en particulier, il pourrait le télécharger sans restriction. La raison derrière ceci est que votre serveur n’est probablement pas configuré pour protéger les dossiers placés dans wp-content/customer-area
. Vous avez deux possibilités pour protéger ce répertoire, en changeant l’emplacement de ces dossiers ( serveurs Apache ou Nginx), ou avec un fichier .htaccess ( serveurs Apache uniquement ).
A. En modifiant l’emplacement des fichiers privés
Cette méthode est compatible avec les serveurs Apache ou Nginx mais diffère en fonction de votre version de WP Customer Area.
1ère étape: Déplacer les dossier depuis votre FTP
Connectez-vous à votre FTP et déplacez les dossiers wp-content/customer-area/storage
et wp-content/customer-area/ftp-uploads
vers un emplacement situé en dehors de la racine de votre site. Par exemple, si votre structure FTP ressemble à /var/www/mysite.com/public_html/wp-content/customer-area
, vous devrez déplacer ces dossiers en dehors du dossier public_html
, de façon à vous assurer que personne ne pourra y accéder à partir de l’URL correspondante, depuis un navigateur.
Donc, pour être sécurisés, ces dossiers peuvent, par exemple, être localisés dans /var/www/mysite.com/customer-area-protected/storage
et /var/www/mysite.com/customer-area-protected/ftp-uploads
.
Note : ne déplacez pas le dossier customer-area complet car il peut contenir d’autres sous-dossiers tel que le dossier templates
.
2ème étape : Indiquer le nouvel emplacement des dossiers à WP Customer Area
WP Customer Area 6.2 et au dessus
Le chemin vers le répertoire de stockage des fichiers peut être indiqué dans Réglages > Fichiers Privés > Stockage des fichiers
WP Customer Area 5.0 et au dessus
Si vous préférez changer cet emplacement de façon programmée, vous pouvez modifier l’emplacement de stockage des dossiers des propriétaires en implémentant un simple filtre dans une extension personnalisée :
function cuar_change_private_directory($original_dir) { return '/path/to/my/own/directory'; } add_filter('cuar/core/ownership/base-private-storage-directory', 'cuar_change_private_directory');
WP Customer Area jusqu’à 4.x
Cette méthode ne peut pas être utilisée.
B. Avec un fichier .htaccess
Cette méthode est compatible avec n’importe quelle version de WP Customer Area mais nécessite un serveur Apache.
Vous pouvez sécuriser le dossier en copiant (et renommant) le fichier /wp-content/plugins/customer-area/extras/protect-downloads.htaccess
vers /wp-content/customer-area/.htaccess
).
Astuce : Sous Windows, pour renommer un fichier vers un nom commençant par point, vous devez ajouter un autre point à la fin. Donc, renommez le fichier en .htaccess.
si vous essayez de faire cela sous Windows, et le dernier point disparaîtra ensuite.