我遇到了一个问题.htaccess
。我搜索了整个互联网,但所有解决方案都不起作用。请帮助我!谢谢!
在 Apache 错误日志中,有以下行:
(13)Permission denied: /[website root]/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable and that '/[website root]/' is executable
看起来只是文件权限配置错误。但是,将.htaccess
文件和网站根目录更改为755
不起作用。为了做实验,我将 .htaccess 和网站根目录都更改为777
,但还是不起作用。
有人说添加AllowOverride all
到目录设置中,我已经设置了,添加或删除都不起作用。
我已经关闭SElinux了,系统环境是CentOS 7.2.1511 + Apache 2.4.6。
有人可以给我一些建议吗?
我认为这似乎是文件权限错误,但也可能是其他错误。虽然我完全不知道。
非常感谢!
答案1
根据Apache 维基此错误意味着您的网站根目录存在权限问题
为了诊断它们,请打开第二个终端并以 root 身份发出以下命令:
su -l apache -s /bin/bash
它将以apache
用户身份登录你,并允许通过以下方式导航到你的网站根目录来查找哪些目录/文件无法访问:
cd /[website root]/
cat .htaccess
如果在 apache 用户下执行以下命令未显示文件内容.htaccess
,则应修改目录/文件权限或文件所有者以允许访问。尝试以 root 身份执行以下命令:
chown apache:apache /[website root]/.htaccess
chmod 755 /[website root]/.htaccess
这应该可以修复错误
答案2
确保 apache 可以读取 htaccess 文件:
chmod 644 /var/www/abc/.htaccess
并检查目录是否为可读和可执行格式:
chmod 755 /var/www/abc/