如何使本地网络用户访问我的 WAMP 网站?

首先,我阅读了至少20篇关于这个主题的文章,没有一篇能够与这个场景相匹配,而且我无数次搞砸了这个过程。因此,我提供我的具体情况下,如果有任何帮助将是感激的帮助。

笔记本电脑或其他设备通过无线路由器连接。

我试过了:

  • 在防火墙上启用80端口,什么都没发生。
  • 在那里运行 pingipconfig并尝试 IPv4地址,拒绝访问或带我到 Verizon (我的 ISP) ,路由器配置页面。
  • 尝试配置 Apache,是一个烂摊子,从来没有得到所有的授权设置在许多职位和尝试之一的承诺,它崩溃了我的 WAMP,必须经过所有的麻烦和重新安装。

我真正想做的是让所有连接到那个无线路由器的用户都能访问我的 Win8主机 WAMP 站点。

我想知道是否有任何具体的步骤,我可以走过去,使它真正的工作?

Win8.1上的 WAMP 2.4。 笔记本主机本地站点。

430369 次浏览

有关如何在 WAMPServer3中实现这一点,请参阅本文的结尾

对于 WampServer 2.5和以前的版本

WAMPServer 被设计成一个单座开发人员工具。因此,默认情况下,Apache 被配置为只允许从运行服务器的 PC 访问,即 localhost 或127.0.0.1或: : 1

但是,由于它是 Apache 的完整版本,所有您需要的只是对您正在使用的服务器的一点了解。

最简单的方法是使用“在线放置”wampmanager 菜单选项。

left click wampmanager icon -> Put Online

然而,这告诉 Apache 它可以 接受来自宇宙中任何 IP 地址的连接。这不是一个问题,只要你没有端口转发80端口在您的路由器,或永远不会尝试在未来。

更明智的方法是编辑 httpd.conf 文件(同样使用 wampmanager 菜单)并手动更改 Apache 访问安全性。

left click wampmanager icon -> Apache -> httpd.conf

这将在记事本中启动 httpd.conf 文件。

查找这个文件的这一部分

<Directory "d:/wamp/www">
#
# Possible values for the Options directive are "None", "All",
# or any combination of:
#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important.  Please see
# http://httpd.apache.org/docs/2.4/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks


#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   AllowOverride FileInfo AuthConfig Limit
#
AllowOverride All


#
# Controls who can get stuff from this server.
#
#    Require all granted
#   onlineoffline tag - don't remove
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Allow from localhost
</Directory>

现在假设您的本地网络子网使用地址范围192.168.0?

Allow from localhost后面添加这一行

Allow from 192.168.0

这将告诉 Apache 允许从该子网上的任何 ip 地址访问它。 当然,您需要检查您的路由器是否设置为使用192.168.0范围。

这只是通过从命令窗口 ipconfig输入这个命令,然后查看标记为 IPv4 Address.的行,然后使用在这里看到的地址的前3个部分来完成。

例如,如果你的看起来像这样:-

IPv4 Address. . . . . . . . . . . : 192.168.2.11

你会用

Allow from 192.168.2

针对 Apache 2.4用户的更新

当然,如果您使用的是 Apache 2.4,那么语法已经发生了变化。

你应该把这一部分全部替换掉:

Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Allow from localhost

使用新的 Apache 2.4语法

Require local
Require ip 192.168.0

你不应该只是添加到 httpd.conf它必须是一个替换。

WAMPServer3及以上版本

在 WAMPServer3中有一个默认定义的虚拟主机。因此上述建议不起作用

取而代之的是,让服务器 OFFLINE继续运行,因为这个功能已经停止工作了,这就是为什么 Online/Offline菜单变成可选的并且默认关闭的原因。

现在您应该编辑 \wamp\bin\apache\apache{version}\conf\extra\httpd-vhosts.conf文件。在 WAMPServer3.0.6及以上版本中,实际上有一个菜单,可以在编辑器中打开这个文件

left click wampmanager -> Apache -> httpd-vhost.conf

就像一个总是存在的编辑 httpd.conf文件。

如果您没有添加任何自己的虚拟主机,那么它应该是这样的

#
# Virtual Hosts
#


<VirtualHost *:80>
ServerName localhost
DocumentRoot c:/wamp/www
<Directory  "c:/wamp/www/">
Options +Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>

现在只需更改 Require参数以适应您的需求 EG

如果要允许从任何地方访问,请将 Require local替换为

Require all granted

如果你想更具体和安全,只允许在您的子网 IP 地址添加访问权利,这样允许任何电脑在您的子网

Require local
Require ip 192.168.1

或者说得更具体一点

Require local
Require ip 192.168.1.100
Require ip 192.168.1.101
go to...
C:\wamp\alias

在别名文件夹中,您将看到一些文件 比如 phpmyadmin,phpsysinfo 等等。

打开每个文件,可以看到文件内部有一些注释指令,可以从外部访问,如 从外部进入 phpmyadmin 更换线路

Require local


by


Require all granted

因为我刚刚经历了这个-我想给我的解决方案,即使这是一个有点老。

我有一个家庭路由器上的几台电脑,我一直在为自己的一些项目工作。我想看看它在我的移动设备上是什么样子。但是 WAMP 已经设置好了,所以我只能从开发系统中继续工作。因此,我开始四处寻找,发现这篇文章以及其他一些文章。问题是,他们都不为我工作。所以我只能自己想办法了。

我的解决办法是:

首先,在 HTTPD.CONF 文件中,您需要在允许哪些设备访问您的 WAMP 服务器的列表末尾添加一行。所以不是:

#    Require all granted
#   onlineoffline tag - don't remove
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Allow from localhost

做到这一点:

#    Require all granted
#   onlineoffline tag - don't remove
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1
Allow from localhost
Allow from 192.168.78

上面说,任何设备,是在您的路由器(’78’只是一个任意数字挑选这个解决方案。它应该是您的路由器设置的任何东西。所以它可能是192.168.1或者192.168.0,甚至是192.168.254——你必须在你的路由器上查找它现在可以访问您的服务器。

以上没有为我做任何事情-在第一。你还有很多事要做。但首先-什么你不需要做。您不需要将 WAMP 设置从脱机更改为联机。对我来说,改变设置没有任何作用。不知道为什么,就是不行。所以,如果你想改变它-但我不认为它需要被改变。

那么还有什么需要改变的呢?对于下一个更改,您必须回到 httpd.conf 文件的开头,这非常简单。属性后面必须添加一个新行

Listen Localhost:80

Listen 192.168.78.###:80

其中的“ # # #”是您的服务器所在的 IP 地址。假设你的服务器 IP 地址是234。那么上面的命令就会变成

Listen localhost:80
Listen 192.168.78.234:80

再说一次,“78”只是我随便选的一个数字。要得到你真正的 IP 号码,你必须打开一个命令窗口并输入

ipconfig/all

指挥官。查找您的 TCP/IPv4编号,并将其设置为该编号或 TCP/IPv6(如果您只有这个编号的话)(尽管在内部路由器集中您通常有一个 IPv4编号)。

注意 : 如果您不知道如何打开一个命令窗口——单击 Start,选择“ Run”选项,然后在对话框中键入“ cmd.exe”,但不带引号。在较新的系统(因为他们不断改变一切) ,它可能是白色的窗口图标或圆形或比尔盖茨跳上跳下。不管是什么,点击它。

完成上述操作后,重新启动所有服务,一切都会正常运行。

终于,为什么?为什么您必须更改 Listen 命令?它与 localhost 有关。“ localhost”默认设置为127.0.0.1,而不是您的 IP 地址。这可以在您的主机文件中找到,通常在 Windows 下的 system32文件夹中找到,但可能已被微软移动到其他地方。上网查查它在哪里,然后去看看。如果你在本地主机文件中看到很多色情、色情等网站,你需要删除它们(除非这是你的事情)。我建议使用 Rogue刽子手(在 AdLice.com)来检查你的系统,因为它可以为你重置主机文件。

如果您的主机文件是正常的-它应该只包含一个条目,该条目是设置 localhost 为127.0.0.1。这就是为什么在 httpd.conf 文件中使用 localhost 可以使您只能处理所有内容并从服务器计算机上查看所有内容。

因此,如果你觉得冒险-改变你的主机文件,不听命令或只是改变听命令,以监听端口80在您的服务器上。

全新的 (我忘记放这部分了)

您可能需要更改您的 TCP/IP 地址。(我的已经设置好了,所以我不需要这样做。)您将需要查找您的操作系统如何到达您的 TCP/IP 地址的定义。在 WindowsXP 下,这是控制面板-> 网络连接。这在以后的操作系统中已经改变了,所以您必须查找如何到达那里。无论如何,一旦你看到你的无线网络连接或局域网连接(Windows)。基本上是 WIFI 或以太网电缆。选择活动的和正在使用的。然后在 Windows 下右击并选择“属性”。应该会弹出一个对话框,您应该会看到一个复选框列表,其中列出了它们的位置。寻找一个是为 TCP/IP。应该有一个是 TCP/IP V4。选吧。(如果没有,你应该小心行事。)单击“属性”按钮,应该会得到另一个对话框。此选项显示“自动获取 IP 地址”或“使用以下 IP 地址”。如果是第一个,那么你必须把它改成第二个。但是在这之前——打开一个命令窗口,输入 ipconfig/all 命令,这样你就可以知道你的默认网关是什么了。然后把它从“获取...”改为“使用...”。在说“ IP 地址”的地方放入你想一直使用的 IP 地址。这是您在上面的 Listen 命令中输入的 IP 地址。第二行(子网掩码)通常是255.255.255.0,这意味着只有最后一个数字(即: 0)发生变化。然后,回头看看放在默认网关中的命令窗口。最后,但同样重要的是,当您从“获取...”更改为“使用...”时,DNS 设置可能已经更改。如果处理 DNS 设置的部分已经更改为“使用...”,并且是空白的-答案很简单。只需查看 ipconfig/all 输出,找到那里的 DNS 设置并将它们放到提供的字段中。完成后单击 OK 按钮,然后单击第二个 OK 按钮。一旦对话框关闭,您可能必须重新启动系统,以使更改生效。你可以去 Google 或者 Stack Overflow 试试。如果你仍然可以去的地方-然后没有重新启动是必要的。否则,重启。记住!如果之后你不能上网,你所要做的就是返回并重置一切到“获取...”选项。最有可能的原因是,在进行了更改之后,您不能再访问因特网,因为您选择使用的 TCP/IP 地址已经被路由器使用。对于 TCP/IP 地址,也有“只能有一个”的说法。这就是为什么我总是选择一个高一百或低二百的数字。因为大多数 DHCP 设置使用的数字小于50。这样就不会与别人的 TCP/IP 号码发生冲突。

这就是我解决问题的方法。

最终对我有用的是我在这里发现的:

Http://www.codeproject.com/tips/395286/how-to-access-wamp-server-in-lan-or-wan

总结一下:

  • httpd.conf中听:

    Listen 192.168.1.154:8081

  • 在本节中添加“允许”:

    < 目录「 cgi-bin 」 > 允许覆盖无 没有选择 允许,否决 允许所有人

  • 制定一个入港规则。我认为对我来说最关键的缺失部分是:

太好了! 下一步是打开服务器端口(8081) ,以便 每个人都可以访问你的服务器。这取决于你是哪个操作系统 如果您使用的是 WindowsVista,请按照下面的步骤操作 步骤。

打开控制面板 > 系统及保安 > Windows 防火墙 单击“预先设置”,然后从 左面板,然后点击“添加规则...”。选择“ PORT”作为一个选项 从列表中选择“ TCP”协议,然后在下一个屏幕中选择“ TCP”协议 在“指定本地端口”下输入端口号“8081”,然后单击 “下一步”按钮,并选择“允许连接”,然后给出 这个端口的一般名称和说明,然后单击“完成”。

现在您已经完成了港口的开放。

下一步是“重新启动所有服务”的 WAMP 和访问您的机器在局域网 或者 WAN。

启动你的 Wamp 服务器enter image description here

然后转到 控制面板 > 系统及保安 > Windows 防火墙关闭 Windows 防火墙

现在你可以通过本地网络从另一台计算机访问你的 Wamp 服务器 通过安装了 Wamp 服务器的计算机的网络 IP 比如“我的网站”rel = “ nofollow norefrer”http://192.168.2.34/mysite

我在 Wamp 3.0和 Apache 2.4方面有一些经验。

完成所有的工作后,做以下步骤:

1-关闭节点32。

2-将这一行添加到 httpd-vhosts.conf文件中的 <VirtualHost *:80>块:

Require ip 192.168.100 #client ip, allow 192.168.100.### ip's access

很简单,对我很有效。

run you wamp server => click right mouse button => and click on "put online"

然后以管理员身份打开 cmd,并传入这个命令单词

ipconfig => and press enter

然后很多地址显示出来,然后你只需要看第一个,它看起来像这个例子: Adresse IPv4. . . . . . . . . . . . . .: 192.168.67.190 做得好! ,这是地址,您将使用您的本地中心到您的 Wampserver。

如果你使用的是 Windows 系统,如果你在上面做了所有的注释,

您可以检查您的网络和共享中心。

网络和共享中心-> 高级共享设置-> 家庭或工作配置文件更改

谢谢,干得好!

您必须通过 防火墙(推荐)允许 阿帕奇人进程(httpd.exe)。

或者禁用局域网上的防火墙(仅用于测试,不推荐使用)。

例如 Wamp (在 Apache 激活的情况下) :

  1. 检查 Wamp 是否在本地发布,如果是,请继续;
  2. 访问控制面板
  3. 点击“防火墙”
  4. 单击“允许应用程序通过防火墙”
  5. 点击“允许一些应用程序”
  6. 查找并选择 C:/wamp64/bin/apache2/bin/httpd.exe
  7. 重启 Wamp

现在打开网络另一个主机上的浏览器,通过 IP 访问 Apache 服务器(例如192.168.0.5)。您可以通过在命令提示符上键入 ipconfig来发现本地主机 IP。

有用

在 WAMPServer 3中,你不能在 httpd.conf中这样做

相反,编辑 \wamp\bin\apache\apache{version}\conf\extra\httpd-vhost.conf并对为 localhost定义的 Virtual Host 做相同的修改

WAMPServer3附带为 localhost预定义的虚拟主机

多年来,我一直在使用 WAMP 与数量的 vhost,并且所有工作在 WAMP 机器的罚款。

几天前,我需要测试其中一个站点从其他计算机在局域网上发布它在线。

下面是我的设置,主要基于这篇文章中的回答/评论:

  • 所有驻留在 WAMP 服务器上的站点都有一个“ domain”. local (mydomain * .com = > mydomain * . local)
  • 对于所有站点,http 流量被重定向到 https

为了使其适用于所有 LAN 计算机,需要进行以下更改

  1. Conf-没有更改,也没有必要放置 WAMP 在线
  2. 对于 httpd-vhosts. conf 的 Directory 部分中的所有 vhost (对于启用 https 的站点,对于 httpd-ssl. conf)
#Require local
#Require all granted # also works
#Allow from all # works for all LAN
Allow from 192.168.55.*
  1. 在 Windows 防火墙中启用 httpd.exe
  2. 为局域网内每台计算机上的主机文件中的每个 mydomain * . local 设置 DNS 记录

192.168.55.221 mydomain * . local

192.168.55.221是 WAMP 服务器的地址。如果你有像我一样的本地 DNS 服务器(Pi-hole) ,你可以在那里做。

更新 如果局域网中的任何设备使用 VPN,并且 DNS 服务器地址设置在路由器上,则 DNS 服务器方法将不适用于这些设备。您必须在主机文件中设置 DNS 记录!

这种设置适用于 VMWare 上的每台 Win PC、平板电脑/手机和 Win VM。奇怪的是,它不能在 Ubuntu 20.04(VMWare 和 Raspberry PI4B)上运行。我想我必须学习如何在 Ubuntu 上设置 DNS!