Проблема з дозволом на PHP


2

Я вивчаю php, і у мене виникають проблеми під час написання сторінки для завантаження файлів. У docroot у мене є index.php (сторінка, яка викликає fopen) та каталог під назвою "images", куди я хочу перенести тимчасовий файл. Однак фопенд не виходить із "дозволом відмовлено" (vide / var / log / httpd / error_log). fopen називається запитом запису.

Я переглянув мережу і виявив, що проблема в дозволах на зображення реж. Я вперше змінив власника групи dir на групу, відмінну від root, і додав до цієї групи "apache". група має дозвіл на реж. (Я з’ясував, що мій Apache працює як користувач apache з

# ps aux| grep httpd

Це не вдалося. (Мав би спрацювати, ні?)

Знову я порушив цілі образи / режисер, що належать "apache". марно.

І так, я перезапустив сервер після внесення кожної з вищезазначених змін.

Дякую,

Яті

PS: Моя репутація тут не дозволяє мені самостійно відповідати протягом 8 годин, тому тут вирішили редагувати. За допомогою Ігнасіо командою для зміни контексту SELinux у режимі зображень є:

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

зсередини docRoot.

знову дякую.

Відповіді:


2

SELinux не дозволяє HTTPd записуватись у цей каталог. Використовуйте chconдля зміни контексту файлу images/на httpd_sys_rw_content_t, і якщо це дозволяє йому працювати, тоді використовуйте, semanageщоб зробити його постійним.


Привіт. Велике спасибі, але httpd_sys_rw_content_t chcon повідомляє як недійсний контекст.
yati sagade

У якому дистрибутиві ти працюєш?
Ігнасіо Васкес-Абрамс

Fedora 15. будь-які підказки?
yati sagade

Це правильне значення для F15. Перевірте написання та переконайтесь, що всі selinux-*пакунки оновлені.
Ігнасіо Васкес-Абрамс

Дякую Ігнасіо за те, що вказав на мене в правильному напрямку. Здається, команда chcon буде: # chcon -R -h -t httpd_sys_rw_content_t images Дякую
yati sagade
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.