Вопрос: Какое владение нужно Apache, чтобы не требовать разрешения на выполнение для всего мира на public_html
(751
)?
Справочная информация. Когда я изменил настройки php.ini через cPanel, возникла ошибка: «Ошибка: EUID, 1005, не принадлежит /home/my_user_name/public_html/.htaccess». Я понял это, потому что это был .htaccess
файл принадлежал root:root
,
Итак, как зеленый пользователь SHELL я сменил владельца каждого файла, используя chown -R my_user_name:my_user_name .[^.]*
. Милая, теперь я могу сохранить свой php.ini через MultiPHP INI в cPanel.
Вот тогда и появилась эта симпатичная ошибка при попытке посетить любую страницу моего сайта Drupal 8:
Запрещено У вас нет разрешения на доступ к этому серверу. Сервер не может прочитать файл htaccess, запрещает доступ в целях безопасности
Кроме того, при попытке использовать ErrorDocument для обработки запроса возникла ошибка 403 Forbidden.
Даже после удаления, повторной загрузки и смены владельца на root:root
, это не сработало.
Единственное, что сработало, это изменение public_html
до 751 (вместо 750). Зачем Apache нужны разрешения на выполнение для всего мира? И какой владелец / группа мне нужно изменить это, чтобы исправить это?
754 тоже не заработало
Вам необходимо разрешение на выполнение в каталоге для доступа к файлам внутри.
Apache обращается к файлам не как root, а как другой пользователь, httpd или www, www-apache или apache ... Зависит от ваших настроек.
Если владельцем каталога является root, а группа - root без мирового исполняемого бита, только root может получить доступ к файлам внутри. Бег chmod +x public_html
должен это исправить.