WAMP 403 Windows 7上的禁止消息

Jak*_*ake 100 apache wamp wampserver httpd.conf http-status-code-403

我在我的Windows 7机器上安装了WAMP 2.1版.当我在浏览器中浏览到localhost时,WAMP服务器页面可见.

但是当我在浏览器中浏览到我的IP时,我收到了消息

403禁止访问:您无权访问此服务器上的/.

有什么建议?

Nas*_*ine 126

到Apache服务器的访问是从比其他地址禁止127.0.0.1httpd.conf(Apache的配置文件):

<Directory "c:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
</Directory>
Run Code Online (Sandbox Code Playgroud)

您的PHPMyAdmin访问也是如此,配置文件是phpmyadmin.conf:

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
</Directory>
Run Code Online (Sandbox Code Playgroud)

您可以将它们设置为允许来自所有IP地址的连接,如下所示:

AllowOverride All
Order allow,deny
Allow from all
Run Code Online (Sandbox Code Playgroud)

  • **对于Apache版本2.4.x**在`<Directory"c:/ wamp/www /">`标签内的_httpd.conf文件中替换`Require local`和`Require all granted`然后**重启所有服务** (12认同)
  • 这肯定会打开任何IP地址的访问权限,但是不是有点危险吗?允许'从127.0.0.1'的规则应该足以允许本地访问,如果这是主要目标,127.0.0.1基本上是一个回到网络适配器的循环.如果您输入地址栏'http':// 123.0.0.1:{portNumber}/{folderOrFileName}',它应该可以正常工作.这应该与使用localhost相同,但我发现某些浏览器出于某种原因与localhost有问题. (7认同)
  • 不要忘记从WAMP系统托盘菜单中"重新启动所有服务"(或者你这样做). (3认同)

小智 62

我找到了一个更简单的修复...

虽然图标是绿色的,但WAMP仍然需要"放在线"(左键单击图标时的最后一项菜单).

之后,我正常访问.

  • 实际上,这应被标记为已接受的答案.谢谢老兄. (3认同)

Gir*_*ins 25

对我来说,包含"Require local"有助于解决Error 403.别名配置文件如下所示:

Alias /mytest/ "C:/mytest/" 

<Directory "C:/mytest/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order allow,deny
    Allow from all
    Require local
</Directory>
Run Code Online (Sandbox Code Playgroud)

  • 这也适用于我,使用Apache 2.4.9.一直在寻找这个.谢谢! (3认同)

小智 10

如果您可以从外部提供对WAMP服务器的访问权限,则可以使用更改httpd.conf中权限的解决方案.

如果您不想这样做,那么您所要做的就是告诉Windows"localhost"域指向127.0.0.1.您可以通过编辑系统目录中的hosts文件来完成此操作.

该文件位于:C:\ Windows\System32\drivers\etc\hosts

默认情况下,Windows 7附带:

# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost
#   ::1             localhost
Run Code Online (Sandbox Code Playgroud)

您必须取消注释localhost的映射:

# localhost name resolution is handled within DNS itself.
127.0.0.1       localhost
#   ::1         localhost
Run Code Online (Sandbox Code Playgroud)

注意:您将无法将hosts文件编辑为只读文件.要进行编辑,您必须是管理员,将文件复制到其他位置,编辑它然后将其复制回etc目录.

我不建议更改hosts文件.使用httpd.conf文件的权限.仅当您不希望从外部访问服务器时才使用hosts文件方法.


小智 8

尝试将以下代码行添加到httpd-vhosts.conf文件中:

<VirtualHost *:80>
ServerAdmin serveradmin@host.com
DocumentRoot "C:\wamp\www"
ServerName localhost
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)


小智 8

对于 Wamp 3.1.3 和 Apache 2.4,我只需更改 httpd-vhosts.conf 文件中的 1 行。

  1. 打开httpd-vhosts.conf
  2. 将“要求本地”更改为“要求所有已授予”
  3. 重启所有服务

然后我就可以从其他计算机访问我的 apache 服务器。

请注明此视频:https://www.youtube.com/watch ?v=Sy_f6wBGnjI


Gee*_*huh 7

我发现的另一件事是,如果您的网络适配器使用IPV6,它将不会显示为127.0.0.1但是:: 1

我最终做的是:

<Directory "c:/wamp/www/">
    Options Indexes FollowSymLinks
    AllowOverride all
    Order Deny,Allow
    Deny from all
    Allow from 127.0.0.1
    Allow from ::1
</Directory>
Run Code Online (Sandbox Code Playgroud)

您的PHPMyAdmin访问也是如此,配置文件是phpmyadmin.conf:

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
        Allow from ::1
</Directory>
Run Code Online (Sandbox Code Playgroud)