WAMP 403 禁止来自外部来源

Posted

技术标签:

【中文标题】WAMP 403 禁止来自外部来源【英文标题】:WAMP 403 forbidden from external sources 【发布时间】:2016-08-16 18:00:48 【问题描述】:

我在这里和其他地方阅读了大量的帖子,但没有一个建议奏效。我在全新安装的 Windows Server 2012 R2 上安装了最新版本的 WAMP 64 位。

我在www 目录中创建了一个名为andrew 的子目录。那是一个index.html 文件。

我在 hosts 文件中添加了以下内容:

127.0.0.1 andrew
::1 andrew

我在httpd-vhosts.conf 文件中添加了以下内容:

<VirtualHost *:80>
    DocumentRoot "c:/wamp64/www/andrew"
    ServerName andrew
    <Directory  "c:/wamp64/www/andrew">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

我在 httpd.conf 中取消了虚拟主机行的注释

我停止并启动了 net dnscache 我重新启动了 WAMP 服务 我将 WAMP 服务器“上线”

无论如何,当我从另一台机器(如[server IP address]*/andrew/index.html)访问服务器时,我收到403 Forbidden 错误。

这是 apache 错误日志(“[SERVER IP]”实际上是服务器的实际 IP):

[Fri Apr 22 17:10:32.628356 2016] [mpm_winnt:notice] [pid 4680:tid 424] AH00422: Parent: Received shutdown signal -- Shutting down the server.
[Fri Apr 22 17:10:34.656507 2016] [mpm_winnt:notice] [pid 4444:tid 312] AH00364: Child: All worker threads have exited.
[Fri Apr 22 17:10:34.672087 2016] [mpm_winnt:notice] [pid 4680:tid 424] AH00430: Parent: Child process 4444 exited successfully.
[Fri Apr 22 17:10:34.921723 2016] [auth_digest:notice] [pid 4724:tid 416] AH01757: generating secret for digest authentication ...
[Fri Apr 22 17:10:34.952892 2016] [mpm_winnt:notice] [pid 4724:tid 416] AH00455: Apache/2.4.17 (Win64) php/5.6.16 configured -- resuming normal operations
[Fri Apr 22 17:10:34.952892 2016] [mpm_winnt:notice] [pid 4724:tid 416] AH00456: Apache Lounge VC14 Server built: Oct 11 2015 11:49:07
[Fri Apr 22 17:10:34.952892 2016] [core:notice] [pid 4724:tid 416] AH00094: Command line: 'C:\\wamp64\\bin\\apache\\apache2.4.17\\bin\\httpd.exe -d C:/wamp64/bin/apache/apache2.4.17'
[Fri Apr 22 17:10:34.952892 2016] [mpm_winnt:notice] [pid 4724:tid 416] AH00418: Parent: Created child process 4388
[Fri Apr 22 17:10:35.140157 2016] [auth_digest:notice] [pid 4388:tid 312] AH01757: generating secret for digest authentication ...
[Fri Apr 22 17:10:35.171357 2016] [mpm_winnt:notice] [pid 4388:tid 312] AH00354: Child: Starting 64 worker threads.
[Fri Apr 22 17:10:49.899265 2016] [authz_core:error] [pid 4388:tid 1040] [client 73.82.23.97:57193] AH01630: client denied by server configuration: C:/wamp64/www/andrew/index.html
[Fri Apr 22 17:10:50.055249 2016] [authz_core:error] [pid 4388:tid 1040] [client 73.82.23.97:57193] AH01630: client denied by server configuration: C:/wamp64/www/favicon.ico, referer: http://[SERVER IP]/andrew/index.html

我现在认为这与 Windows 2012 Server 上的某些设置有关,但我无法弄清楚。帮助。

【问题讨论】:

【参考方案1】:

因为 Apache 不知道将 IP 地址与您的虚拟主机相关联,所以它使用主服务器设置。可能你根本不需要虚拟主机,但还是试试吧:

<VirtualHost *:80>
    DocumentRoot "c:/wamp64/www/andrew"
    ServerName andrew
    #of course, enter your IP address here
    ServerAlias 1.2.3.4
    <Directory  "c:/wamp64/www/andrew">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

【讨论】:

嗯,这在技术上是可行的。 [Server IP]/andrew/index.html 没有,但只需输入 http://[Server IP] 即可直接进入该文件夹。我希望做的是在 www 目录中有几个不同的文件夹,并为每个文件夹设置 vhost 条目,以便用户可以访问 IP/andrew、IP/foobar 等。 但是您已将DocumentRoot 设置为包含andrew 文件夹,因此您不会将其放入您的网址中。我认为您误解了虚拟主机是什么。正如我所说,你可能根本不需要一个。在the documentation 中查找Alias 命令。正如名称所暗示的那样,virtual host 允许您在一台服务器上拥有不同的主机名。 啊。我正在阅读一篇文章,说使用虚拟主机而不是别名。在网络方面,我无疑是一个 n00b。我是一名 SQL Server 开发人员。这是我引用的文章:***.com/questions/23665064/…【参考方案2】:

请不要忘记编辑 phpMyAdmin.conf 文件。它将节省您面对 403 错误(403 禁止)的时间。您应该将 Require all grant 设置为如下(由使用的 phpMyAdmin 版本独立):

Alias /phpmyadmin "c:/wamp64/apps/phpmyadmin5.0.2/"

<Directory "c:/wamp64/apps/phpmyadmin5.0.2/">
  Options +Indexes +FollowSymLinks +MultiViews
  AllowOverride all
  Require all granted

# To import big file you can increase values
  php_admin_value upload_max_filesize 128M
  php_admin_value post_max_size 128M
  php_admin_value max_execution_time 360
  php_admin_value max_input_time 360
</Directory>

【讨论】:

以上是关于WAMP 403 禁止来自外部来源的主要内容,如果未能解决你的问题,请参考以下文章

设置 zend 框架时禁止 Wamp 403

WAMP 403 Forbidden禁止访问 的解决办法

使用 SSL 时在 WAMP 服务器上出现 403 禁止错误

启用永久链接后,Wordpress 在 wamp apache 上抛出 403 禁止错误?

发出 ajax Post 请求时出现 403 禁止错误

如何删除禁止访问!来自 xampp 5.6 的错误 403