Веб-сервер Centos 7 Apache не использует новый корневой каталог документов

Я установил веб-сервер apache на моем Centos 7, и я включил mod_ssl для него. Но когда я пытаюсь изменить корневой каталог документа по умолчанию на новый (например, / home / user / public_html ), он показывает мне страницу 403 Forbidden . Я думаю, возможно, это из-за разрешений на каталог, но я не знаю, что с ним делать и как его изменить. Что мне теперь делать? Любая помощь действительно приветствуется.

0
задан 29 December 2020 в 22:02
1 ответ

Не размещайте корни документов в домашних каталогах пользователей. Это небезопасно по ряду причин, и SELinux по умолчанию не разрешает веб-серверу читать файлы в домашних каталогах пользователей. Используйте каталог, который распознает SELinux, например /srv/www, создайте в нем каталоги для каждого виртуального хоста и предоставьте им соответствующие разрешения и списки управления доступом для пользователей, которые должны получать доступ к содержимому.

Если по какой-то причине вы не можете следовать рекомендациям и должны заставить веб-сервер читать содержимое из домашних каталогов пользователей, вы можете установить логическое значение httpd_read_user_content.

setsebool -P httpd_read_user_content 1

Но учтите, что опять же из соображений безопасности SELinux никогда не разрешает запись в домашние каталоги пользователей, поэтому функции веб-приложений, которые предполагают запись контента (например, пользовательские загрузки), не будут работать. В другом каталоге, таком как /srv/www, каталогам, которые должны быть доступны для записи, может быть присвоен тип httpd_sys_rw_content_t.

0
ответ дан 29 December 2020 в 19:41

Теги

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