在win7上的不同目录中的wamp 2.5中创建vhost返回禁止错误

Posted

技术标签:

【中文标题】在win7上的不同目录中的wamp 2.5中创建vhost返回禁止错误【英文标题】:Create vhost in wamp 2.5 in different directory on win7 returns forbidden error 【发布时间】:2014-10-01 12:38:44 【问题描述】:

我在 C:\wamp 中安装了 wamp,我想将 E:\zf2​​ 中的 DocumentRoot 文件夹作为虚拟域 www.skeltonapplicaiton-zf2.local 的虚拟主机。

取消提交在 httpd.conf 文件中包含 conf/extra/httpd-vhosts.conf 行。

httpd-vhosts.conf 代码是

<VirtualHost *:80>
    ServerName www.skeltonapplicaiton-zf2.local
    ServerAlias skeltonapplicaiton-zf2.local
    DocumentRoot "E:\zf2"
    <directory "E:\zf2">
        Options Indexes FollowSymLinks
        AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from all
    </directory>
</VirtualHost>

在hosts文件中添加了它的条目

127.0.0.1 www.skeltonapplicaiton-zf2.local
127.0.0.1 skeltonapplicaiton-zf2.local

然后重新启动 wamp 服务器。

在浏览器中打开 www.skeltonapplicaiton-zf2.local 后出现错误

Forbidden

You don't have permission to access / on this server.

Apache 错误日志是

[Fri Aug 08 11:00:41.940054 2014] [authz_core:error] [pid 7256:tid 796] [client 127.0.0.1:59500] AH01630: client denied by server configuration: E:/zf2/

【问题讨论】:

【参考方案1】:

您的所有设置都是正确的,但是 apache 2.4(wamp 2.5 使用 apache 2.4)有一些变化,即指令 Allow 被删除,取而代之的是新指令 Require 。正确的配置将与虚拟主机是

<VirtualHost *:80>
    ServerName www.skeltonapplicaiton-zf2.local
    ServerAlias skeltonapplicaiton-zf2.local
    DocumentRoot "E:\zf2"
    <directory "E:\zf2">
        Options Indexes FollowSymLinks
        AllowOverride all
        Require all granted
    </directory>
</VirtualHost>

所以,只需删除

 Order Deny,Allow
    Deny from all
    Allow from all

并使用

Require all granted

【讨论】:

除非你真的想让全世界看到你的网站,至少在你开发它的时候最好使用Require local,因为这涵盖了127.0.0.1 and localhost and ::1 您的意思是,我应该使用“要求本地”来访问 localhost ,而不是使用 "Require all grant" 。对吗?

以上是关于在win7上的不同目录中的wamp 2.5中创建vhost返回禁止错误的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 WampServer 2.5 上的 www 根目录

Wamp 2.5 中的“WAMP/vhosts”文件夹是啥意思?

WAMP 2.5 (Apache 2.4.9) 允许从 LAN 上的所有计算机进行访问

PHP7 学习笔记403 Forbidden - WAMP Server 2.5

无法访问本地网络上的 wamp server 2.5 服务

在wamp中创建数据库