我已经尝试了 Google 前 3 页中的所有内容以及服务器故障上的所有其他内容,但均不起作用,我收到的错误如下:
[crit] [client] (13)Permission denied: /var/www/html/multicraft/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable
我尝试过chmod 755
并/var/www/html/multicraft
递归,但没有任何效果,完全没有运气。请注意,我确实在服务器上安装了 SELinux,但之前从未导致此安装出现问题。
这是的权限/var/www/html
,的输出ls -l
:
total 8
-rw-r--r--. 1 root root 20 Aug 5 15:07 info.php
drwxr-xr-x. 8 apache apache 4096 Aug 5 15:08 multicraft
输出如下/var/www/html/multicraft
:
total 40
-rw-r--r--. 1 apache apache 560 Nov 9 2012 api.php
drwxr-xr-x. 2 apache apache 4096 Nov 9 2012 assets
drwxr-xr-x. 2 apache apache 4096 Nov 9 2012 css
-rwxr-xr-x. 1 apache apache 2550 Nov 9 2012 favicon.ico
drwxr-xr-x. 7 apache apache 4096 Nov 9 2012 images
-rw-r--r--. 1 apache apache 660 Nov 9 2012 index.php
-rw-r--r--. 1 apache apache 620 Nov 9 2012 install.php
drwxr-xr-x. 5 apache apache 4096 Nov 9 2012 net2ftp
drwxr-xr-x. 12 apache apache 4096 Nov 9 2012 protected
drwxr-xr-x. 5 apache apache 4096 Nov 9 2012 themes
对于/var/www/html/multicraft/.htaccess
:
-rw-r--r--. 1 apache apache 451 Nov 9 2012 .htaccess
最后输出ls -lad / /var /var/www /var/www/html /var/www/html/multicraft
:
dr-xr-xr-x. 22 root root 4096 Aug 5 13:59 /
drwxrwxr-x. 21 root root 4096 Aug 5 14:00 /var
drwxrwxr-x. 6 root root 4096 Aug 5 13:21 /var/www
drwxrwxr-x. 3 apache apache 4096 Aug 5 15:08 /var/www/html
drwxrwxr-x. 8 apache apache 4096 Aug 5 15:08 /var/www/html/multicraft
答案1
type=AVC msg=audit(1375733894.906:43363): avc: denied { read } for pid=11191 comm="httpd"
"name=".htaccess" dev=dm-0 ino=2624761 scontext=unconfined_u:system_r:httpd_t:s0`
tcontext=unconfined_u:object_r:admin_home_t:s0 tclass=file
从输出中我可以看出,问题出在 selinux 上。您可以暂时禁用它,然后重试。您也可以尝试获取当前上下文
# ls --context /var/www/html/multicraft/.htaccess
答案2
要解决这个问题,最好restorecon -Rvf /var/www/html/
我认为禁用 SELinux 不是一个好主意,它可以防止许多漏洞和权限提升。