web-dev-qa-db-fra.com

htaccess pcfg_openfile: impossible de vérifier le fichier htaccess, assurez-vous qu'il est lisible et que '/files/domain.com/public_html/images/' est exécutable

Aujourd'hui, j'ai migré mes images d'un serveur à un autre et j'ai rencontré un étrange problème d'autorisation

[Mon Mar 25 08:42:23.676315 2013] [core:crit] [pid 15182] (13)Permission denied: [client 24.14.2.22:48113] AH00529: /files/domain.com/public_html/images/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable and that '/files/domain.com/public_html/images/' is executable, referer: http://domain.com.com/file.php

ce que j'ai essayé:

    chmod -R 777 root_dir
    restorecon -r
    disable selinux
    Chown -R root:root root_dir
19
teslasimus

Aujourd'hui, j'ai fait face à ce problème. J'ai transféré public_html de l'ancien lecteur vers le nouveau et je le montre comme ceci:

chown -R owner:owner public_html

Ceci est correct pour les sous-répertoires et fichiers dans public_html, mais l'utilisateur de public_html ne doit être personne pour qu'Apache puisse vérifier son contenu, donc cela a résolu mon problème:

chown owner:nobody public_html

Remarque: propriétaire est l'utilisateur (par exemple web1)

27
Ali

J'ai eu le même problème. Pour moi, c'est un problème de SeLinux (CentOS 7).

Ça marche pour moi:

$ setsebool -P httpd_enable_homedirs true
$ chcon -R -t httpd_sys_content_t /var/www/html/

Notez que vous devez modifier ce qui précède /var/www/html/ dans un répertoire approprié.

12
shintaroid

J'utilisais Plesk onyx et j'ai reçu le même message d'erreur, je viens de changer l'autorisation de dossier en 775 et cela a fonctionné pour moi.

2
Vishal Shetty

TL; DR:

Sudo chmod a+rx /var{,/services{,/web{,/web-folder}}};
find /var/services/web/web-folder -type d -exec Sudo chmod a+rx {} +;

Vous devez vous assurer que le répertoire et tous ses répertoires parents sont lisibles et exécutables (l'exécutabilité est requise pour ouvrir un répertoire) par le serveur Web. Vous pouvez le faire en faisant de l'utilisateur du serveur Web le propriétaire et en définissant les autorisations utilisateur (EG: chown Apache <dir>; chmod u+rx <dir>;), ou en faisant du groupe le groupe de serveurs Web un groupe qui inclut l'utilisateur du serveur Web et en définissant les autorisations de groupe sur (EG: chgrp Apache <dir>; chmod g+rx <dir>;), ou en définissant les perms du monde sur (EG: chmod o+rx <dir>;).

1
Karl Wilbur

ouvrez votre fichier httpd.conf et changez Refuser de tous en Autoriser de tous sur le fichier .htaccess

Les lignes suivantes empêchent les fichiers .htaccess et .htpasswd d'être

visualisé par les clients Web.

<FileMatch "^\.ht">
  Order allow,dey
  Allow from all
</FileMatch>

cela a résolu mon problème

Quand j'ai vérifié httpd/user-error_log, ça a donné

[Fri Jan 09 18:58:08 2015] [crit] [client 192.168.1.xxx] (13)Permission
denied: /var/services/web/web-folder/.htaccess pcfg_openfile: unable to check
htaccess file, ensure it is readable

chmod 755 ne résout pas le problème. La commande ci-dessous est ce qui fonctionne pour moi. J'utilise http car il s'agit de l'utilisateur et du groupe Apache utilisés dans Synology DSM 5.1-5021

  cd /var/services/web
  chown http:http web-folder


 Apache httpd.conf @ /etc/httpd/conf/httpd.conf

plus de détails sur la nouvelle modification limitations d'Apache/Webserver dans 5.

0
ken