Intereting Posts

Apache дает мне 403 на виртуальном хосте

Я пытаюсь справиться с Apache в CentOS 7.

Я создал два виртуальных хоста и создал основные страницы index.html следующим образом:

/var/www/domainA/public_html/index.html /var/www/domainB/public_html/index.html 

Оба хоста имеют следующие права:

DomainA:

 public_html -> jonathan:jonathan index.html -> root:root 

DomainB:

 public_html -> jonathan:jonathan index.html -> root:root 

Теперь, что происходит, страница index.html домена DomainA отлично работает, но index.html домена B дает мне 403 Forbidden.

Ошибка error.log в DomainB дает мне следующее:

 AH00132: file permissions deny server access: /var/www/DomainB/public_html/index.html 

Почему это происходит? Мне очень грустно.

Проблема оказалась не в разрешении файлов и папок как таковая, а в контексте безопасности нерабочего домена.

Из моего ограниченного понимания, чтобы Apache мог обслуживать файлы, файлы / папки необходимо настроить для работы в контексте httpd_sys_content_d .

Моей «ошибкой» был нерабочий домен, который был mv'd в папке содержимого Apache из моей области разработки и не имел правильного контекста безопасности, поэтому Apache не мог обслуживать файлы. Это было подтверждено запуском ls -Z в папке public_html и вложенных папках.

Я использовал chcon -R -t httpd_sys_content_t public_html/ чтобы установить правильный контекст безопасности, и теперь Apache обслуживает все.