(nginx / selinux) Ошибка отказа в разрешении для сеансов, но файлы созданы

У меня Centos 7 работает nginx / php-fpm с включенным selinux.

Я знаю, что в интернете много похожих вопросов, но мой немного другой. Файлы создаются после установки selinux с помощью nginx, но он по-прежнему говорит, что не может его прочитать …

хвост /var/log/nginx/error.log

2015/10/07 16:18:25 [ошибка] 17860 # 0: * 79 FastCGI отправлено в stderr: «PHP
сообщение: PHP Предупреждение: session_start ():
open (/ var / lib / php / session / sess_sk456vdemnp391spiv3i622i96, O_RDWR)
не удалось: разрешение отклонено (13) в /home/web/api/functions.php на линии
9

ls -la / var / lib / php / session /

всего 12 drwxrwx — + 2 nginx nginx 82 окт 7 16:18. drwxr-XR-х. 3
корень корень 20 октября 5 15:58 ..
-rw ——- + 1 nginx nginx 0 окт. 7 16:15 sess_52psgccceh91vokbau4pq08946
-rw ——- + 1 nginx nginx 0 окт. 7 16:18 sess_sk456vdemnp391spiv3i622i96

* Пользователь php-fpm и nginx — «nginx». * Политика selinux изменена для разрешения доступа к папке сеанса.

Вы знаете, какой журнал я должен проверить, чтобы выяснить, в чем проблема?

Спасибо!

2

Решение

Я нашел проблему!

Мой / var / lib / php / session был system_u: object_r: httpd_sys_content_t: s0 вместо system_u: object_r: httpd_sys_rw_content_t: s0. Это сделало nginx неспособным редактировать материал (только создавать).

Решить проблему:
1 — сброс политики папки:

restorecon -v «/ var / lib / php / session»

2- затем установите хороший

semanage fcontext -a -t httpd_sys_rw_content_t / var / lib / php / session

Вам даже не нужно перезагружать / перезапускать nginx: P

3

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

Столкнулся с той же проблемой.
В моем случае решение было изменить владельца каталога на nginx

chown nginx /var/lib/php/session
0

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