web-dev-qa-db-fra.com

Pourquoi Joomla modifie-t-il les droits d'accès aux fichiers lors de l'installation de plugins?

J'ai le problème suivant: un serveur Apache est exécuté sous l'utilisateur http:http. De plus, les scripts php sont évalués via fastcgi et php-fpm. Les scripts php fonctionnent sous l'utilisateur foo:foo. Les fichiers de joomla appartiennent à foo:foo et les envois se font via FTP.

Quand je modifie le index.php de joomla pour toucher un fichier temporaire, il obtient les droits appropriés (propriété de foo:foo et autorisations de fichiers rw-r--r--).

Cependant, lorsque j’installe un plug-in à partir du backend, les fichiers ont le même propriétaire (foo:foo) mais un autre ensemble de permissions (rw-------). Les dossiers reçoivent le bon rwxr-xr-x. (Remarque: j'ai installé le plug-in directement à partir du Web. Je n'ai donc pas téléchargé les fichiers extraits via FTP ou similaire. À la place, joomla a extrait le fichier Zip.)

Je comprends que ma configuration est correcte en général, mais dans le cas d’une installation utilisant joomla backend, un bogue semble être déclenché. Qu'est-ce que tu penses? Y a-t-il un moyen de continuer le débogage?

3
Christian Wolf

Vérifiez peut-être votre configuration PHP fpm. Cette réponse décrit comment umask est défini https://stackoverflow.com/a/21319941/123594

2
jdog

Par défaut, les autorisations de fichier sur les fichiers extraits de Joomla sont 644 et les autorisations de dossier sont 755.

Si vous voyez quelque chose de différent, alors, comme @jdog mentionné ci-dessus, vous devrez vérifier vos paramètres umask (si vous avez un administrateur système, je vous suggère de le laisser gérer). umask est utilisé pour supprimer les autorisations par défaut (il n'est pas utilisé pour ajouter des autorisations supplémentaires). Je dirais que votre umask est défini sur 077 pour votre processus Apache.

2
itoctopus