Подтвердить что ты не робот

Permission denied:/var/www/abc/.htaccess pcfg_openfile: невозможно проверить файл htaccess, убедиться, что он доступен для чтения?

Привет всем Я использую PHP для своего сайта и ubuntu linux в своей системе. Я получил вышеуказанную ошибку в файле error.log apache, даже после правильной настройки. Я сделал много исследований по этому вопросу, но не смог решить проблему. Может ли кто-нибудь помочь мне в этом реаграде? Ниже приведен мой файл .htaccess в abc directory. Может ли кто-нибудь помочь мне в этом отношении?

# -FrontPage-

IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*

<Limit GET POST>
order deny,allow
deny from all
allow from all
</Limit>
<Limit PUT DELETE>
order deny,allow
deny from all
</Limit>
AuthName abc.org
AuthUserFile /home/abc/public_html/_vti_pvt/service.pwd
AuthGroupFile /home/abc/public_html/_vti_pvt/service.grp
Options -Indexes

RewriteEngine On
RewriteRule ^alumni$ alumni.php
RewriteRule ^student$ student.php
RewriteRule ^view_alumni_article/view/([0-9]+)$ view_alumni_article.php?op=view&article_id=$1
4b9b3361

Ответ 1

Убедитесь, что файл htaccess доступен для чтения apache:

chmod 644 /var/www/abc/.htaccess 

И убедитесь, что каталог в нем доступен для чтения и записи:

chmod 755 /var/www/abc/

Ответ 2

У меня была такая же проблема, когда я сменил домашний каталог на одно использование. В моем случае это было из-за selinux. Я использовал ниже, чтобы исправить проблему:

selinuxenabled 0
setenforce 0

Ответ 3

Если он попадает в арену selinux, у вас есть гораздо более сложная проблема. Нецелесообразно удалить защиту selinux, но принять ее и использовать инструменты, которые были предназначены для ее управления.

Если вы обслуживаете контент из /var/www/abc, вы можете проверить разрешения selinux с помощью Z, добавленного в обычную команду ls -l. т.е. ls -laZ даст контекст selinux.

Чтобы добавить каталог, который будет обслуживаться selinux, вы можете использовать команду semanage, как это. Это изменит метку на /var/www/abc на httpd_sys_content_t

semanage fcontext -a -t httpd_sys_content_t /var/www/abc

это обновит метку для /var/www/abc

restorecon /var/www/abc 

Этот ответ был взят из unixmen и изменен для соответствия этому вопросу. Я искал этот ответ на некоторое время и, наконец, нашел, что так чувствовал, что мне нужно где-то поделиться. Надеюсь, это поможет кому-то.