CentOS7.0下安装Apache2.4.20版本,安装完成之后,报 You don't have permission to access / on this server.(403)
广告:
今天装了Apache2.4.20版本的,安装完成之后,我以后会和以前一样直接就能访问默认文件htdocs文件夹下的index.html文件,然而并没有。浏览器访问报的一直是403 Forbidden,网上找了一遍都说是,把
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
改成
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
就OK了,NO并不是,上面的那个是Apache2.2+里面的配置。
我的httpd.conf里面的是这样的:
<Directory />
AllowOverride none
Require all denied
</Directory>
对没错就是这样的,php2.4+中是把Order deny,allow Deny from all两项合并为Require all denied的。好那么现在我将Require all denied改为允许状态Require all granted。然后重启Apache,还是没有用,这是为什么呢?
真是气死宝宝了,经过一番折腾之后我才整明白了,记住一定记住:
#<Directory />
# AllowOverride none
# Require all denied
#</Directory>
一定是要注释的。
注释之后,再修改下面的路径为自己要访问的目录下,就OK了。
DocumentRoot "/var/www/html"
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride none
Require all granted
</Directory>
改好后,要重启apache:
停止httpd: service httpd stop
启动httpd: service httpd start
还有就是不知道有没有人想我一样白痴,装好Apache之后,使用service httpd restart发现重启不了。
那是因为没有将Apache的运行程序添加到系统服务中去,执行:
cp /data/server/apache/bin/apachectl(自己安装的Apache的目录) /etc/init.d/apached
就可以了。
广告: