Установка меток SElinux для сайта magento на Centos 7

Я надеялся, что кто-нибудь сможет помочь мне. У меня есть сайт Magento, работающий на сервере Centos 7.6.

Теперь,сайт загружается некорректно и при просмотре журнала messages.log я вижу множество записей, в которых SElinux блокирует доступ. Я могу подтвердить, что это проблема SElinux, поскольку установка в разрешающем режиме устраняет проблему («используется свободно»).

Выполняя sealert -l 3bedf708-7636-44d4-95f6-c98b8ea16687 , я вижу следующее:

SELinux запрещает / usr / sbin / httpd доступ для записи на / var / www / html / MyMagentoSite / var / session /

Существуют различные записи для разных файлов и папок.

Могу ли я просто запустить chcon -R -t httpd_sys_rw_content_t / var / www / html / magentofoldername / * , или что было бы лучше?

Это кажется нелогичным, в что я даю чтение и запись всем в папке magento.

0
задан 10 September 2019 в 03:26
2 ответа

Почему бы не следовать за Вашей интуицией и применять маркировку только к session каталог (из Вашего сообщения об ошибке).

однако, интуиция не является лучшим помощником здесь, но можно сделать некоторые поиски на том, что является "ожидаемыми" маркировками, с помощью детективных навыков.

каталог сессии PHP По умолчанию /var/lib/php/session.

, Если Вы делаете semanage fcontext -l | grep php затем, Вы видите эту запись:

/var/lib/php(/.*)? all files system_u:object_r:httpd_var_lib_t:s0 

, Таким образом, каталог сессии PHP, я предполагаю, должен быть маркирован как httpd_var_lib_t.

Так:

chcon -R -t httpd_var_lib_t /var/www/html/magentofoldername/var/session 
0
ответ дан 23 November 2019 в 04:37

Если Вы будете использовать chcon и после перезагрузки сервера то у Вас будет та же проблема, использовать semanage fcontext таким образом:

semanage fcontext -a -t httpd_var_lib_t "/var/www/html/magentofoldername/var/session(/.*)?"

Теперь можно применить selinux полномочия:

restorecon -R -v -F   /var/www/html/magentofoldername/var/session
0
ответ дан 23 November 2019 в 04:37

Теги

Похожие вопросы