Ответ 1
chmod 755 -R /silex_project/
решил мою проблему. Я все еще не знаю, почему Apache нуждается в разрешениях на запись для работы.
Я пытаюсь создать веб-сайт с помощью Silex Bootstrap. Я поместил его в свою папку с другими веб-проектами и изменил DocumentRoot в конфигурации Apache.
<Directory /folder/to/silex_projects/web>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
Но я не могу открыть индексную страницу фреймворка, Apache дает:
[Mon Dec 17 21:10:52 2012] [crit] [клиент 127.0.0.1] (13) Разрешение отклонено:/folder/to/silex_project/web/.htaccess pcfg_openfile: невозможно проверить файл htaccess, убедитесь в этом читается
Я chmod'ed всю папку проекта с chmod a+r -R
. Другие проекты в одной папке отлично работают с файлом .htaccess
.
Файл .htaccess
существует.
chmod 755 -R /silex_project/
решил мою проблему. Я все еще не знаю, почему Apache нуждается в разрешениях на запись для работы.
Вероятно, это связано с тем, что пользователь, работающий с Apache, не имеет разрешения eXecute в каталоге. Также необходимо прочитать файлы внутри него. chmod a+rx /folder/to/silex_projects
, вероятно, решит вашу ошибку.
Ваш chmod 755 -R
не решает этого, также предоставляя доступ на запись, но поскольку это просто добавляет eXecute.
В дополнение к другим опубликованным ответам, что-то, что может укусить вас в этой ситуации, - SELinux (если оно включено), если вы меняете все, где файлы могут быть доступны из мест размещения по умолчанию.
Исправление состоит в том, чтобы добавить соответствующую политику в selinux для каталога/файлов или отключить ее, если вы не хотите, чтобы безопасность selinux работала.
У меня тоже есть эта ошибка и найти это хорошее refrence (13) Разрешено:/home/username/.htaccess pcfg_openfile: невозможно проверить файл htaccess, обеспечить он читается
При просмотре вашего домена, если вы видите ошибку "Запрещено", а затем проверьте свои журналы apache: /Вар/Журнал/HTTPD/error_log /var/log/httpd/domains/domain.com.error.log
и увидеть ошибку:
[crit] [client 1.2.3.4] (13)Permission denied: /home/username/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable
это подразумевает, что apache не имеет доступа для чтения в вашем каталоге /home/username.
Причиной этого может быть связанное с разрешением, связанное с конфигурацией или связанное с этим участие.
Apache работает как пользователь "apache", поэтому каталог должен быть + x для этого пользователя или группы.
1) Начиная с DirectAdmin 1.38.0, мы реализуем функцию secure_acccess_group, которая устанавливает /home/user (для пользователей) значение chmod 750 и chown username: access. Пользователь apache будет находиться в группе "Доступ". Чтобы подтвердить это, введите следующее:
[[email protected]]# grep ^access: /etc/group
access:x:506:apache,nobody,mail,majordomo,daemon
и вы должны получить что-то похожее на отображаемый результат.
Если вы получаете пустой список пользователей, тогда группа доступа существует, но пуста. Чтобы правильно заполнить группу (в системах RedHat/CentOS/Debian), введите:
usermod -G access apache
usermod -G access nobody
usermod -G access mail
usermod -G access majordomo
usermod -G access daemon
в системах FreeBSD команда для создания группы:
pw groupadd -n access -M apache,nobody,mail,majordomo,daemon
но это означает, что группа еще не существует. Этот случай не был замечен во FreeBSD, поэтому, скорее всего, он не понадобится.