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

Vik*_*mar 3 wamp virtualhost zend-framework2

我在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>
Run Code Online (Sandbox Code Playgroud)

在hosts文件中添加了条目

127.0.0.1 www.skeltonapplicaiton-zf2.local
127.0.0.1 skeltonapplicaiton-zf2.local
Run Code Online (Sandbox Code Playgroud)

然后重新启动wamp服务器.

在浏览器中打开www.skeltonapplicaiton-zf2.local后,我收到了错误消息

Forbidden

You don't have permission to access / on this server.
Run Code Online (Sandbox Code Playgroud)

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/
Run Code Online (Sandbox Code Playgroud)

Pra*_*kla 9

你的所有设置都是正确的,但是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>
Run Code Online (Sandbox Code Playgroud)

所以,Just Remove

 Order Deny,Allow
    Deny from all
    Allow from all
Run Code Online (Sandbox Code Playgroud)

并使用

Require all granted
Run Code Online (Sandbox Code Playgroud)