今天我迁移我的图片从一台服务器到另一个面临的一个奇怪的权限问题
[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
我已经试过:
chmod -R 777 root_dir
restorecon -r
disable selinux
Chown -R root:root root_dir
今天我遇到了这个问题。 我转的public_html从旧的驱动为新的和chown这样的:
chown -R owner:owner public_html
这是子目录和文件内的public_html是正确的,但的public_html的用户必须是没有人这样Apache可以检查它的内容,所以这个解决我的问题:
chown owner:nobody public_html
注意: 所有者为用户(例如WEB1)
我有同样的问题。 对我来说,这是SELINUX(CentOS的7)的问题。
这个对我有用:
$ setsebool -P httpd_enable_homedirs true
$ chcon -R -t httpd_sys_content_t /var/www/html/
请注意,您应该上述改变/var/www/html/
一个适当的目录。
我使用的Plesk玛瑙和我同样的错误信息,我只是改变了文件夹的权限,以775和它为我工作。
TL; DR:
sudo chmod a+rx /var{,/services{,/web{,/web-folder}}};
find /var/services/web/web-folder -type d -exec sudo chmod a+rx {} +;
你需要做出一定的目录及其所有的父目录,是可读和可执行文件(可执行需要打开一个目录)由Web服务器。 可以通过使web服务器用户的所有者和使用户烫发做到这一点(EG: chown apache <dir>; chmod u+rx <dir>;
),或者通过使基团是web服务器的基团,其包括web服务器的用户和设置组烫发到(EG: chgrp apache <dir>; chmod g+rx <dir>;
或通过设置世界烫发到(EG: chmod o+rx <dir>;
打开你的httpd.conf文件,并从所有改变拒绝从所有允许在.htaccess文件
以下行防止的.htaccess和htpasswd文件被
Web客户查看。
<FileMatch "^\.ht">
Order allow,dey
Allow from all
</FileMatch>
这解决了我的问题
当我检查httpd/user-error_log
,它给
[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是不是解决了这个问题。 下面的命令是我的作品。 我使用HTTP,因为它是在台Synology DSM 5.1-5021使用apache用户和组
cd /var/services/web
chown http:http web-folder
apache httpd.conf @ /etc/httpd/conf/httpd.conf
有关新的变化更多的细节在5.0的Apache / Web服务器的限制
文章来源: htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable and that '/files/domain.com/public_html/images/' is executable