Ответ 1
Убедитесь, что файл htaccess доступен для чтения apache:
chmod 644 /var/www/abc/.htaccess
И убедитесь, что каталог в нем доступен для чтения и записи:
chmod 755 /var/www/abc/
Привет всем Я использую 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
Убедитесь, что файл htaccess доступен для чтения apache:
chmod 644 /var/www/abc/.htaccess
И убедитесь, что каталог в нем доступен для чтения и записи:
chmod 755 /var/www/abc/
У меня была такая же проблема, когда я сменил домашний каталог на одно использование. В моем случае это было из-за selinux
. Я использовал ниже, чтобы исправить проблему:
selinuxenabled 0
setenforce 0
Если он попадает в арену 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 и изменен для соответствия этому вопросу. Я искал этот ответ на некоторое время и, наконец, нашел, что так чувствовал, что мне нужно где-то поделиться. Надеюсь, это поможет кому-то.