客户端拒绝服务器配置

时间:2011-12-07 09:30:57

标签: apache kohana-3 virtualhost

我尝试将kohana 3项目设置为虚拟主机。

配置:

<VirtualHost *:80>
  DocumentRoot "D:/Devel/matysart/matysart_dev1"
  ServerName matysart-one.local
  ServerAlias www.matysart-one.local
  DirectoryIndex index.php
</VirtualHost>

错误(403):

  

[client 127.0.0.1]客户端被服务器配置拒绝:   d:/杰韦利/ matysart / matysart_dev1 /

有人可以帮忙吗?

7 个答案:

答案 0 :(得分:94)

就我而言,我修改了目录标记。

发件人

<Directory "D:/Devel/matysart/matysart_dev1">
  Allow from all
  Order Deny,Allow
</Directory>

<Directory "D:/Devel/matysart/matysart_dev1">
  Require local
</Directory>

它认真工作。 Apache 2.4.2似乎改变了它。

答案 1 :(得分:29)

对我来说,以下工作是从/etc/apache2/apache2.conf中的示例复制的:

<Directory /srv/www/default>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

Require all granted选项是针对Apache 2.4版+的此问题的wiki.apache.org页面中第一个问题示例的解决方案。

有关“需要”选项的详细信息,请参见official apache page for mod_authz modulethis page too。即:

  

要求全部授予 - &gt;无条件允许访问。

答案 2 :(得分:19)

错误“客户端拒绝服务器配置”通常意味着配置中的某个位置是阻止访问的Allow fromDeny from指令。有关详细信息,请阅读mod_authz_host文档。

您应该可以通过添加类似以下内容的方法在VirtualHost中解决此问题:

<Location />
  Allow from all
  Order Deny,Allow
</Location>

或者使用Directory指令:

<Directory "D:/Devel/matysart/matysart_dev1">
  Allow from all
  Order Deny,Allow
</Directory>

对您的Apache配置文件进行一些调查可能会调出默认DocumentRoot的默认限制。

答案 3 :(得分:2)

就我而言,

我正在使用macOS Mojave(Apache / 2.4.34)。 /etc/apache2/extra/httpd-vhosts.conf文件中的虚拟主机设置存在问题。添加所需的目录标记后,我的问题就解决了。

要求所有已授予

希望完整的虚拟主机设置结构可以为您节省空间。

<VirtualHost *:80>
    DocumentRoot "/Users/vagabond/Sites/MainProjectFolderName/public/"
    ServerName project.loc

    <Directory /Users/vagabond/Sites/MainProjectFolderName/public/>
        Require all granted
    </Directory>

    ErrorLog "/Users/vagabond/Sites/logs/MainProjectFolderName.loc-error_log"
    CustomLog "/Users/vagabond/Sites/logs/MainProjectFolderName.loc-access_log" common
</VirtualHost>

您要做的所有事情都是用您的确切ProjectFolderName替换MainProjectFolderName。

答案 4 :(得分:0)

我曾多次从Apache 2.2迁移过这种情况。

我发现有一个Order,Deny,我错过了VIM的搜索功能,这是默认的主Vhost,第379行。希望这有助于某人。我评论了拒绝,允许和拒绝全部的命令,它起作用了!

答案 5 :(得分:0)

这对我有用..

<Location />
 Allow from all
 Order Deny,Allow
</Location>

我已将此代码包含在我的/etc/apache2/apache2.conf

答案 6 :(得分:0)

我的服务器具有正确的主机和IP列表。 allow all都没有。我的解决方法是将新工作站的主机名放入列表中。因此建议是:

确保所使用的计算机确实在允许的IP列表上。从日志消息中查看IP,解析名称,检查ifconfig / ipconfig等。

*由于错误消息,Google向我发送了邮件。