今天搭个lamp服务端,一切程序服务在15分钟左右搞好,放个测试程序上去,却出现403错误。
根据提示,是权限问题,所以核查httpd.conf配置,找来找去,发现没有错误,<Directory "/var/www/html">没问题,配置如下:
<Directory "/var/www/html">
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
重启了httpd进程几次,访问错误如初。百度这个错误,基本都是说httpd.conf的配置问题。。。
不得已,看下httpd的error.log吧,终于发现有些不对径了,如下:
里面提到unable to check htaccess file,以为是缺少这个.htaccess的文件,于是在目录补上这个文件,出错如故。
再看看,还有一句:ensure it is readable and that '/var/www/html/' is executable,要保证.htaccess文件存在,且/var/www/html是可执行的。
突然想起之前将html这个文件夹改为了774,这个文件夹是属于root用户组和root用户的,为了让属于root用户组普通用户有权限上去传网页文件所以这样改。问题出在这里了,最后一个4只是让非root用户组的普通用户只有read权限,而apache恰好属于非root用户组的普通用户!所以apache没有执行权限,需要提升权限改为775。
chmod -R 775 html,改完后访问就正常了。。。