2012-08-23 3 views
0

J'utilise un plugin Thumbnail. Il stocke les pouces dans un dossier sur webroot. mais quand il essaie de sauver le pouce, retourne "aucune écriture" erreur. L'autorisation du répertoire est 755. Si je change la permission à 777, l'erreur disparaît. mais j'ai lu quelque part 777 la permission peut causer des problèmes de sécurité ..écrire dans un dossier et les risques de sécurité

Que dois-je faire?

Répondre

1

vous pouvez changer le propriétaire (par exemple chown www-data:www-data your/direcotry/path dans linux)

chown [OPTIONS] [Owner][:[Group]] FilenameOrFoldername 

que l'utilisateur serveur web (l'utilisateur qui exécute des scripts php) possède le répertoire, puis il a accès en écriture et vous pouvez quitter la droits à 755.

7 5 5 = rwx rx rx

r ead w rite e x ecute

premier chiffre = propriétaire
deuxième chiffre = groupe
troisième chiffre = tous les autres utilisateurs

signifie que seul le propriétaire a accès en écriture (il peut ajouter des fichiers au répertoire dans ce cas, l'utilisateur www-data), le groupe (www-data) a des droits de lecture et d'exécution et le reste a des droits de lecture et d'exécution, donc il ne devrait pas y avoir de sécurité avec 755.

vous avez un outil où vous pouvez calculer le droit -> conversion du nombre de chmod

+1

Cela semble être la bonne solution, donnez les permissions correctes à l'utilisateur qui en a besoin. – bdares

0

les droits sont écrits en tant que propriétaire/groupe/autre, je pense que vous pouvez utiliser 775 droits pour votre logique.

0

Vous pouvez le stocker quelque part que le serveur web (comme apache ou nginx) ne peut pas accéder mais votre serveur d'application Web (PHP, Java servlet, peu importe) peut, et faire la logique pour l'attraper de ce dossier et servez-le comme une image. De cette façon, vous vous assurez que les fichiers téléchargés par les utilisateurs ne sont jamais exécutés.

Cela coûterait plus de ressources serveur, donc c'est quelque chose que vous devriez considérer.

Si les fichiers sont créés par votre application et qu'il n'y a aucun moyen pour l'utilisateur de les modifier directement, il n'y a aucun problème à lui donner des permissions d'écriture.

+0

mauvaise solution. trop de traitement pour le noyau. mais si ce n'est pas grave, c'est le meilleur. – Anton

+0

pour les fichiers de l'utilisateur c'est le meilleur, mais dans mon application, les utilisateurs ne téléchargent jamais un fichier. L'application crée une image et un pouce, la stocke quelque part et montre aux utilisateurs – mrdaliri

Questions connexes