Ошибка Apache при настройке Silex Bootstrap: невозможно проверить файл htaccess - программирование

Ошибка Apache при настройке Silex Bootstrap: невозможно проверить файл htaccess

Я пытаюсь создать веб-сайт с помощью 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 существует.

4b9b3361

Ответ 1

chmod 755 -R /silex_project/ решил мою проблему. Я все еще не знаю, почему Apache нуждается в разрешениях на запись для работы.

Ответ 2

Вероятно, это связано с тем, что пользователь, работающий с Apache, не имеет разрешения eXecute в каталоге. Также необходимо прочитать файлы внутри него. chmod a+rx /folder/to/silex_projects, вероятно, решит вашу ошибку.

Ваш chmod 755 -R не решает этого, также предоставляя доступ на запись, но поскольку это просто добавляет eXecute.

Ответ 3

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

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

Ответ 4

У меня тоже есть эта ошибка и найти это хорошее 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, поэтому, скорее всего, он не понадобится.