Ошибка сервера Apache 500, когда DocumentRoot является символической ссылкой

Я установил свою систему Fedora, по умолчанию размер / составлял 50 ГБ, а остальные диски были помещены на /home.

так как я не хочу тратить свои драгоценные 50 ГБ на свой веб-проект, я настроил свой веб-сервер apache следующим образом:

так как по умолчанию апач /var/www/html

я удаляю каталог html и заменяю его символической ссылкой, указывающей на мой /home/user/www/html

обратите внимание, что /home, /home/user, /home/user/www, /home/user/www/html имеют разрешение x для apache

моя конфа такая

DocumentRoot "/var/www/html"

<Directory "/var/www">
    Options Indexes FollowSymLinks
    AllowOverride None 
    Require all granted
</Directory>

<Directory "/var/www/html"> 
    Options Indexes FollowSymLinks 
    AllowOverride None 
    Require all granted
</Directory>

Я уже перезапустил службу httpd, и все было в порядке. Проблема в том, что когда я пытаюсь получить доступ к моему index.php, я получаю сообщение об ошибке сервера. когда это index.html, я получаю 403.

мой selinux в настоящее время включен, и я не планирую его отключать. Я хотел бы узнать, как использовать его, а не. так это проблема selinux?

Когда я запускаю ls -Zla на /home/user/www/html, вот результат

-rw-r--r--. 1 root root unconfined_u:object_r:user_home_t:s0   27 Dec 21 22:37 index.php

Кажется, что SELinux предотвращает это

при доступе к html

[Mon Dec 21 23:35:33.749916 2015] [core:error] [pid 20579] (13)Permission denied: [client 127.0.0.1:45632] AH00132: file permissions deny server access: /var/www/html/index.html

когда php

    [Mon Dec 21 23:39:36.801672 2015] [:error] [pid 20585] [client 127.0.0.1:45816] PHP Warning:  Unknown: failed to open stream: Permission denied in Unknown on line 0
[Mon Dec 21 23:39:36.801730 2015] [:error] [pid 20585] [client 127.0.0.1:45816] PHP Fatal error:  Unknown: Failed opening required '/var/www/html/index.php' (include_path='.:/usr/share/pear:/usr/share/php') in Unknown on line 0

~


person user101    schedule 21.12.2015    source источник
comment
прочитайте свой журнал ошибок apache по причине   -  person Panama Jack    schedule 21.12.2015
comment
Просто примечание — вместо создания символической ссылки вы можете просто изменить DocumentRoot на любое другое. (Конечно, вам все равно понадобятся правильные метки selinux.)   -  person mattdm    schedule 21.12.2015


Ответы (1)


тому, кто может столкнуться с этой проблемой. измените тип selinux папки с помощью этой команды.

sudo chcon -R -t httpd_sys_content_t /home/user/www

больше информация

person user101    schedule 21.12.2015