PHP - fopen (файл, a) не работает в Linux

У меня есть два файла: X.txt с правами собственности www-data : www-data и 777. Когда я пытаюсь выполнить fopen("X.txt","w+"), все работает просто отлично, а fopen("X.txt","a") терпит неудачу и возникает ошибка, потому что разрешение отклонено.

Возможно, было бы полезно упомянуть, что до того, как X.txt принадлежал www-data : www-data, он принадлежал usr:usr, и fopen("X.txt","w+") также потерпел неудачу.

Еще полезные данные:

-X.txt находится в /var/www/reports.

-PHP не работает в безопасном режиме

Было бы очень полезно понять, что может вызвать эту проблему, идеи будут оценены.


person Itamar    schedule 09.02.2016    source источник
comment
оба файла в одном каталоге? кому принадлежит каталог? что это за каталог и их родительские разрешения? PHP работает в безопасном режиме?   -  person peixotorms    schedule 10.02.2016
comment
Отредактирована и добавлена ​​информация, которая может оказаться полезной   -  person Itamar    schedule 10.02.2016
comment
А что происходит с file_get_contents('/var/www/reports/X.txt')?   -  person Tigger    schedule 10.02.2016
comment
file_get_contents вроде работает   -  person Itamar    schedule 10.02.2016
comment
не говори под. «принадлежит» было бы более подходящим. в контексте файловой системы под подразумевается иерархия каталогов, а не разрешения.   -  person Marc B    schedule 10.02.2016
comment
Вероятно, нет прав на запись для папок, содержащих ваши файлы.   -  person maxhb    schedule 10.02.2016
comment
Разрешение на запись в каталог потребуется только в том случае, если он создает файл, а не в случае записи в существующий файл.   -  person Barmar    schedule 10.02.2016
comment
Это очень странно. Открытие для записи и добавления должно требовать одинаковых разрешений. Они оба требуют разрешения на запись в файл или запись в каталог, только если файл необходимо создать.   -  person Barmar    schedule 10.02.2016
comment
Право собственности на PHP-скрипт совершенно не имеет значения. Когда вы запускаете PHP с веб-сервера, он запускается как www-data, а не как владелец скрипта.   -  person Barmar    schedule 10.02.2016
comment
Может это SELinux? stackoverflow.com/questions/27501349/   -  person peixotorms    schedule 10.02.2016
comment
Можете ли вы добавить вывод из ls -lZ /var/www/reports/X.txt к вопросу?   -  person miken32    schedule 10.02.2016