apache — ошибка php fopen на fedora 21

При чтении файла я получаю следующее предупреждение о разрешениях:

PHP Warning: fopen(todo.txt): failed to open stream: Permission denied in /var/www/php/oauth/web/insert.php on line 26, referer: https://oauth.dev/dropbox_finish.php?state=5

Эта проблема возникает только при выполнении этого кода:

try{
$f = fopen("todo.txt", "r+");
...
}

Я сделал много вещей с разрешениями, позвольте мне показать текущие, а затем я покажу остальные.

[root@windows8 abel]# ls -lah /var/www/php
total 32K
drwxr-xr-x. 8 abel apache 4.0K Jun  3 15:53 .
drwxr-xr-x. 6 root root   4.0K May 29 12:38 ..
drwxr-xr-x. 3 abel abel   4.0K May 25 11:38 backup
drwxr-xr--. 6 abel apache 4.0K May 28 16:00 oauth
drwxr-xr-x. 8 abel apache 4.0K Apr 16 16:22 teamerp
drwxrwxr-x. 2 abel abel   4.0K Apr 16 17:18 TeamERP
drwx------. 5 abel abel   4.0K Apr 27 17:14 wordpress
drwx------. 6 abel abel   4.0K Jun  3 15:55 wp-test
[root@windows8 abel]# ls -lah /var/www/php/oauth/
total 36K
drwxr-xr--. 6 abel apache 4.0K May 28 16:00 .
drwxr-xr-x. 8 abel apache 4.0K Jun  3 15:53 ..
drwxr-xr--. 2 abel apache 4.0K Jun  7 11:56 app
-rwxr-xr--. 1 abel apache  124 May 25 16:05 composer.json
-rwxr-xr--. 1 abel apache 3.5K May 25 16:19 composer.lock
-rwxr-xr--. 1 abel apache    9 May 23 12:39 .gitignore
drwxrwxr-x. 3 abel apache 4.0K May 24 17:54 nbproject
drwxr-xr--. 5 abel apache 4.0K May 25 16:19 vendor
drwxr-xr--. 4 abel apache 4.0K Jun  8 15:16 web
[root@windows8 abel]# ls -lah /var/www/php/oauth/web/
total 36K
drwxr-xr--. 4 abel apache 4.0K Jun  8 15:16 .
drwxr-xr--. 6 abel apache 4.0K May 28 16:00 ..
drwxrwxr-x. 2 abel apache 4.0K May 28 16:00 css
-rw-rw-r--. 1 abel apache 5.4K Jun  8 17:37 dropbox_finish.php
-rwxr-xr--. 1 abel apache  109 May 28 09:59 index.php
-rw-rw-r--. 1 abel apache 1.3K Jun  8 17:50 insert.php
drwxrwxr-x. 2 abel apache 4.0K Jun  7 11:36 js
-rwxrwxrwx. 1 abel apache   55 Jun  8 17:50 todo.txt
[root@windows8 abel]#

Файл todo.txt.Она имеет 777 разрешения, веб-сайт работает, но этот файл должен быть открыт для записи. Это единственное отличие по сравнению с другими файлами html и php, которые обслуживает apache.

Пользователь abel является членом apache группа. Я также попытался сделать файл, принадлежащий пользователю apache и это не сработало, кроме того, Apache может читать остальные веб-файлы, это только этот-один.
Любой намек?

РЕДАКТИРОВАТЬ: Я создал папку и поместил файл внутрь. запустить следующее:

echo substr(sprintf('%o', fileperms('todo/todo.txt')), -4);

результат 0777, Я не знаю, что происходит, php на самом деле видит файл, но я все еще получаю сообщение об ошибке.

EDIT2: Я также выполнил следующую команду, чтобы узнать, была ли проблема с файлом selinux.
semanage fcontext -a -t httpd_sys_rw_content_t /var/www/php/oauth/web/todo/todo.txt

Нет результатов.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]