Qu'entendez-vous par accès ? - pour voir les attributs du fichier ; - pour ouvrir le fichier à la lecture ; - ouvrir le fichier en écriture ; - ouvrir le fichier en lecture/écriture ; - ouvrir le fichier pour l'exécuter.
Veuillez noter que le nom d'utilisateur dans l'application PHP n'est pas le même que l'utilisateur Unix, même s'ils ont le même nom.
Veuillez noter que apache/php fonctionne en tant qu'utilisateur apache, www, www-data, nobody.... Ceci est configuré dans la configuration d'apache. Trouvez ceci avec :
egrep -r '^User|^Group' /etc/{apache*,http*}
Avant toute modification, effectuez une sauvegarde.
Trouvez un groupe commun auquel appartiennent votre utilisateur et l'utilisateur d'apache. Si ce n'est pas le cas, créez-en un.
Modifiez le groupe des fichiers et des dossiers que vous avez dans DocumentRoot pour qu'il corresponde à ce groupe :
chown -R myuser:commongroup /var/www/
Modifiez le SUID des dossiers de manière à ce que les nouveaux fichiers appartiennent à ce groupe :
find /var/www/ -type d -print0|xargs -0r chmod g+rxs
chmod -R u+r,g+r,o= /var/www/
Pour les dossiers et les fichiers auxquels vous voulez donner accès à PHP pour l'écriture, faites :
chmod g+w /var/www/folder/subfolder /var/www/folder/file.txt