[dupliquées]fopen(): failed to open stream: Permission refusée (lorsque l'autorisation de chemin est 777)
fonction PHP fopen()
obtenu erreur de permission quand tout le chemin est avec 777 permission.
détails du serveur: Centos 7 , PHP 7.1.8 , Apache 2.4.27
PHP Source Code:
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
Message d'erreur:
Attention: fopen (newfile.txt): failed to open stream: Permission denied dans /var/www/html/test/file.php à la ligne 3
MyTest Url:http://MyIPAddress/test/file.php
777 chemins d'autorisation:
/var/www
/var/www/html
/var/www/html/test
/var/www/html/test/file.php
liste des fichiers avec des autorisations:(Edit 1)
[[email protected] ~]# ls -la /var/www/html/test
total 8
drwxrwxrwx. 2 root root 41 Aug 24 20:26 .
drwxrwxrwx. 4 root root 48 Aug 24 19:37 ..
-rwxrwxrwx. 1 root root 179 Aug 24 20:22 file.php
-rwxrwxrwx. 1 root root 1 Aug 24 20:22 newfile.txt
SELinux est activé & ont accès liste:
[[email protected] ~]# semanage fcontext -l |grep "var/www"
/var/www(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
/var/www/html(/.*)? all files system_u:object_r:httpd_sys_rw_content_t:s0
/var/www/(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
/var/www/html/(.*)? all files system_u:object_r:httpd_sys_rw_content_t:s0
(Edit2) *: Si je désactiver SELinux le problème résoudra, problème de la SELinux, je vais faire une nouvelle question à ce sujet c'est pourquoi j'ai eu une erreur quand j'ai aussi une liste d'accès.
pouvez-vous essayer de mettre un chemin absolu au lieu du chemin relatif juste pour tester si cela fonctionne pour l'absolu. –
@Kimberlee, 'Attention: fopen (/var/www/html/test/newfile.txt): échec de l'ouverture du flux: autorisation refusée' – Root125
Le fichier txt est-il créé dans le répertoire? sinon, peut-être vous pouvez essayer de créer le fichier txt et essayer à nouveau fopen .. –