标题:Wampserver2.5配置虚拟主机出现403 Forbidden的处理方案
在Wampserver2.5中配置虚拟主机(Virtual Host)时,可能会出现403 Forbidden错误,这是因为默认情况下Wampserver禁止了访问虚拟主机的文件夹权限。下面是解决该问题的步骤。
步骤一:打开httpd-vhosts.conf文件
首先打开Wampserver的Apache配置文件httpd.conf
,在其中找到以下代码:
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
这段代码表示Wampserver会加载配置文件httpd-vhosts.conf
来设定虚拟主机。
接着打开httpd-vhosts.conf
文件,常见的位置为D:\wamp64\bin\apache\apache2.4.41\conf\extra\httpd-vhosts.conf
,在其中添加以下代码:
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "D:/wamp64/www/vhost1"
ServerName vhost1.lan
ErrorLog "logs/vhost1-error.log"
CustomLog "logs/vhost1-access.log" common
</VirtualHost>
这段代码表示设置一个名为vhost1
的虚拟主机,其域名为vhost1.lan
,访问vhost1.lan
时会访问文件夹D:/wamp64/www/vhost1
,错误日志和访问日志分别保存在logs
文件夹内的vhost1-error.log
和vhost1-access.log
文件中。
步骤二:修改httpd.conf文件内的文件夹权限
打开httpd.conf
文件,在其中找到以下代码:
<Directory />
AllowOverride none
Require all denied
</Directory>
这段代码表示禁止访问所有文件夹,故需要将其改为:
<Directory />
AllowOverride none
Require all granted
</Directory>
表示允许访问所有文件夹。
接着找到以下代码:
<Directory "c:/Apache24/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
这段代码是对cgi-bin
文件夹的设定,但对虚拟主机文件夹造成了限制,需删除。
最后,在httpd.conf
文件的末尾添加以下代码,开启mod_rewrite
模块:
LoadModule rewrite_module modules/mod_rewrite.so
步骤三:重启服务
完成以上操作后,重启Wampserver服务,访问vhost1.lan
时即可成功访问。
示例一:
假设我们需要新建一个名为vhost2
的虚拟主机,域名为www.vhost2.com
,将其访问的文件夹设定为D:/wamp64/www/vhost2
。在httpd-vhosts.conf
文件中添加以下代码:
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "D:/wamp64/www/vhost2"
ServerName www.vhost2.com
ErrorLog "logs/vhost2-error.log"
CustomLog "logs/vhost2-access.log" common
</VirtualHost>
完成后重启Wampserver服务,访问www.vhost2.com
即可成功访问。
示例二:
假设我们在虚拟主机vhost1
中需要使用PHP语言,可以在其访问的文件夹D:/wamp64/www/vhost1
中新建一个index.php
文件,在其中添加以下代码:
<?php
phpinfo();
?>
完成后重启Wampserver服务,访问vhost1.lan
即可查看PHP的信息页面。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Wampserver2.5配置虚拟主机出现403 Forbidden的处理方案 - Python技术站