2

Я изучаю php, и у меня возникли проблемы при написании страницы загрузки файла. В docroot у меня есть index.php (страница, которая вызывает fopen) и каталог под названием "images", куда я хочу, чтобы временный файл был перемещен. Тем не менее, fopen завершается неудачно с разрешением "отказано" (vide /var /log /httpd /error_log). fopen вызывается с запросом на запись.

Я проверил сеть и обнаружил, что проблема была с разрешениями на dir изображений. Сначала я изменил владельца группы dir на группу, отличную от root, и добавил «apache» в эту группу. группа имеет разрешение на реж. (Я узнал, что мой Apache работает как пользователь apache с

# ps aux| grep httpd

Это не удалось.(Должно было сработать, нет?)

Опять же, я разбил все изображения / директории на «apache». напрасно.

И да, я перезагружал сервер после каждого из указанных изменений.

Спасибо,

Yati

PS: Моя репутация здесь не позволяет мне самостоятельно отвечать в течение 8 часов, поэтому решил отредактировать здесь. С помощью Ignacio команда для изменения контекста SELinux для образа dir:

# chcon -R -h -t httpd_sys_rw_content_t ./images

изнутри docRoot.

еще раз спасибо.

1 ответ1

2

SELinux предотвращает запись HTTPd в этот каталог. Используйте chcon чтобы изменить контекст файла images/ на httpd_sys_rw_content_t , и если это позволяет ему работать, используйте semanage чтобы сделать его постоянным.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .