web-dev-qa-db-fra.com

Autorisation refusée: /var/www/abc/.htaccess pcfg_openfile: impossible de vérifier le fichier htaccess, assurez-vous qu'il est lisible?

Salut à tous, j'utilise PHP pour mon site Web et Ubuntu Linux sur mon système. J'ai l'erreur ci-dessus dans le fichier error.log d'Apache, même après avoir tout configuré correctement. Recherche sur ce sujet, mais ne peut pas résoudre le problème. Quelqu'un peut-il m'aider s'il vous plaît dans ce dossier? Voici mon fichier .htaccess dans abc directory. Quelqu'un peut-il m'aider s'il vous plaît à cet égard?

# -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
42
PHPLover

Assurez-vous que le fichier htaccess est lisible par Apache:

chmod 644 /var/www/abc/.htaccess 

Et assurez-vous que le répertoire dans lequel il se trouve est lisible et exécutable:

chmod 755 /var/www/abc/
117
Jon Lin

J'ai eu le même problème lorsque j'ai changé le répertoire de base d'une utilisation. Dans mon cas, c'était à cause de selinux. J'ai utilisé ce qui suit pour résoudre le problème:

selinuxenabled 0
setenforce 0
32
Aneesh

Si cela entre dans l’arène selinux, vous avez un problème beaucoup plus compliqué. Ce n'est pas une bonne idée de supprimer la protection selinux mais de l'adopter et d'utiliser les outils conçus pour la gérer.

Si vous diffusez du contenu à partir de /var/www/abc, vous pouvez vérifier les permissions selinux avec un Z ajouté au ls -l commande. c'est à dire. ls -laZ donnera le contexte selinux.

Pour ajouter un répertoire à servir par selinux, vous pouvez utiliser la commande semanage comme ceci. Cela changera l'étiquette sur /var/www/abc à httpd_sys_content_t

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

cela mettra à jour l'étiquette pour /var/www/abc

restorecon /var/www/abc 

Cette réponse a été prise à partir de nixmen et modifiée pour répondre à cette question. Cela faisait un moment que je cherchais cette réponse et que je la trouvais si désirée de partager quelque chose. J'espère que ça aide quelqu'un.

6
jbrahy