apache提示Forbidden
2020-04-08 本文已影响0人
代艳霞
htdocs目录地址apache启动一个服务,其实很简单,按照安装说明,我们要想启动服务,把代码放在
htdocs
文件里面就可以了,启动服务也是没有问题的,目录地址如下图所示,找到你安装的apache 的目录地址,然后一层一层的找到htdocs
:
在hosts
文件里面配置:如下一行代码:
点击ApacheMontior.exe
启动服务,路径如下图所示:
打开页面,我们看到如下图所示:
apache服务启动页面正常启动,没有问题。现在我们来启动一个虚拟服务,假如我想把任意一个文件夹作为虚拟服务的启动目录,应该如何操作,因为我的apache
安装在D
盘,所以,我就把D
盘的test
做为启动目录,步骤如下:
- 修改
httpd.conf
文件,路径同样还是在apache
的安装目录去找,如下所示
- 去掉
Include conf/extra/httpd-vhosts.conf
前面的#
此步操作是打开虚拟设置。
- 打开
httpd-vhosts.conf
文件,路径如下图所示:
- 修改里面的配置文件,设置自己想启动的服务网址和启动的目录,启动目录
D:/test
,虚拟服务地址:vhost.qq.com
- 同时修改
hosts
文件,配置虚拟地址如下图:
其实我们根据英文的意思,也可以知道各个设置对应的是那些配置,这个时候我们,打开虚拟的网址,看一下页面的效果(设置好以后,别忘了重新启动服务):
Forbidden- 根据页面的提示,好像是说我们没有权限访问这个目录的文件,网上搜索了很多解决方法,最后也没有解决我的问题,然后自己又看了一下配置文件,理解配置文件的意思,最后终于明白,是因为我们没有给虚拟网址配一个目录,它还是使用原来的默认的目录
htdocs
,所以文件放在这个目录里面才可以,那如何给虚拟机配置我们定义的目录呢?很简单,在httpd.conf
里面配置,只需要修改,DocumentRoot
和<Directory
两个配置就可以了,他面默认的是htdocs
:
- 修改为我们想要的启动服务的地址:我想启动的目录地址是
D:/test
,配置如下:
- 此时重新启动服务,打开页面,看一下效果:
- 页面依然是无法打开,再次查资料,原来我们还需要配置一个访问文件的权限问题,路径依然是在
httpd.conf
里面进行修改,去掉下面几个配置前面的#
:
修改为:
Options Indexes FollowSymLinks ExecCGI
AllowOverride All
Require all granted
- 此时我们重启服务,(每一次修改配置文件,都需要重启服务,修改启动页面内容不用重启服务)打开页面,看一下效果:
虚拟服务正常启动,真的是一步都不能少啊。。。
apache
还不会安装的同学,可以参考我的上一片文章从Python到Apache再到CGI