我刚在家里建立了一个Wi-Fi网络。我的桌面计算机(192.168.1.56)上有我的所有文件,并希望从另一台计算机(192.168.1.2)访问本地主机。
在我的桌面上,我可以通过普通http://localhost访问localhost。 Apache像往常一样在端口80上运行。
我必须做些什么才能实现这一目标?网上有文档,但它们要么不起作用,要么过于片段化,难以理解。
我想我必须更改我的apache的httpd.conf文件和hosts文件。关于要做出哪些改变的任何想法?
答案 0 :(得分:97)
Localhost只是环回的名称,例如它将自己称为“我”。
要从其他计算机上查看它,您可能只需http://192.168.1.56或http://myPcsName,如果不起作用,您的计算机或httpd上可能会运行防火墙。 conf只在127.0.0.1上收听
答案 1 :(得分:42)
感谢您的详细解释。
只需详细说明,在Windows中,转到控制面板 - >防火墙,例外情况“添加http和端口80”。然后在服务中选中“http(Web服务器端口80)”和“https(Web服务器端口443)”仅,如果您还需要https工作。好的,好的,关闭
然后转到网络上的任何计算机,并在网络浏览器中输入http://computer-name(您更改防火墙并在其上运行xampp)并且欢乐时光:)
答案 2 :(得分:21)
这很容易
答案 3 :(得分:17)
当您希望将PHP应用程序安装在LAN服务器上(而不是在Web上)时,请遵循以下步骤
注意: 如果安装了防火墙,请确保将http端口80和8080添加到例外并允许侦听。 转到控制面板> Windows防火墙>允许程序通过Windows防火墙进行通信>添加其他程序 名称:http 港口:80 再添加一个作为http - 8080
如果IIS(Microsoft .Net Application Internet Information Server)与服务器上已有的任何Microsoft .Net应用程序一起安装,那么它将占用80端口。在这种情况下,将#Listen 192.168.1.193:80更改为#Listen 192.168.1.193:8080
希望这有帮助! :)
答案 4 :(得分:6)
这应该是基本设置所需的全部内容
这种配置不会破坏localhost上的phpMyAdmin
建议在运行服务器的设备上使用静态IP
此示例使用192.168.1.x IP。您的网络配置可能使用不同的IP
在Apache的httpd.conf中你应该有:
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 80
我会将名称留空,以便获得默认值:
# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
允许客人机器和您自己。出于安全考虑,您可以避免允许来自所有,而是使用特定的访客IP,例如允许来自192.168.1.xxx ,其中xxx是来宾计算机IP。在这种情况下,您可能还需要考虑来宾计算机上的静态IP
# Controls who can get stuff from this server.
#
# Require all granted
# onlineoffline tag - don't remove
Order Deny,Allow
# Deny from all
Allow from all
Allow from 127.0.0.1
Allow from ::1
Allow from localhost
Allow from 192.168.1.*YOURguestIP*
Allow from 192.168.1.*YOURselfIP*
</Directory>
从托盘图标重新启动所有服务和联机
答案 5 :(得分:5)
有时您的防火墙可能是问题所在。确保已禁用防病毒防火墙监控。它对我有用。
答案 6 :(得分:4)
如果您使用的是XAMPP 1.8.3 导航到文件httpd-xampp.conf并搜索 &#34; # #新的XAMPP安全概念 # 服务器状态|服务器信息))&#34;&GT;
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>
&#34;
剪切此代码并将其保存在某处以备日后使用,即恢复此功能(请记住删除此代码会使您的计算机容易受到攻击)。在httpd-xampp.conf上保存更改,在XAMPP上重新启动服务,以及它。
答案 7 :(得分:4)
转到任务栏中的xampp-control
xampp-control -> Apache --> Config --> httpd.conf
记事本将打开配置文件
搜索
听80
上面有一行,会有类似的内容:12.34.56:80
改变它
12.34.56:80 --> <your_ip_address eg:192.168.1.5>:80
重启apache服务并检查它, 希望它应该有用......
答案 8 :(得分:3)
如果您连接到Wi-Fi网络,则更简单。只需找到已连接到Wi-Fi的IP。例如:
你的IP是“10.10.55.67”。
然后启动计算机中的xampp服务器。
然后在连接到同一Wi-Fi n / w的任何其他计算机上,键入
http://your-ip
例如:http://10.10.55.67
答案 9 :(得分:3)
这个工具为我节省了很多,因为我的机器上没有管理员权限,并且已经安装了nodejs。出于某种原因,我的网络上的配置不允许我访问仅将IP指向浏览器的其他计算机。
# Using a local.dev vhost
$ browser-sync start --proxy
# Using a local.dev vhost with PORT
$ browser-sync start --proxy local.dev:8001
# Using a localhost address
$ browser-sync start --proxy localhost:8001
# Using a localhost address in a sub-dir
$ browser-sync start --proxy localhost:8080/site1
答案 10 :(得分:2)
确保您已按照本页其他答案中的说明设置了appache配置后,您可能还需要通过防火墙打开TCP端口,如下所述:
答案 11 :(得分:2)
首先转到Windows计算机的网络和共享中心。然后按照一些步骤获取您的IPv4地址。
将IPv4地址放在另一台计算机浏览器上。例如,http // 192.168.0.102 强>
注意强>
答案 12 :(得分:1)
以下是我在 Windows 10 上为我做的工作:
1)点击 windows + r 并输入 cmd 。在命令提示符下键入 ipconfig
2)找到您的 ipv4 地址,并将您的网站网址重命名为该网址,例如:http://192.168.0.2/example。
3)现在确保防火墙可以访问 Apache HTTP Server 。搜索“允许应用程序通过Windows防火墙”的窗口点击它然后在右上角单击更改设置并确保Apache HTTP Server左侧有一个勾选一个私人或公共。希望它有所帮助
现在,您可以从局域网中的其他PC访问该网站
答案 13 :(得分:0)
如果有人仍然觉得困难,那么这简单的事情对我有用:
在您的主系统上,假设托管PC ... 转到控制面板> Windows Defender防火墙>允许通过Windows Defender防火墙>更改设置>查找“ Apache HTTP Server”>选中两个复选框(在“私有和公共”下)。 See Screenshot
在通过同一网络连接的任何其他系统上... 打开浏览器>键入:您的托管PC的IP地址,然后在网址栏中输入您的项目名称。例如:192.168.72.111/example.com /
希望有帮助! 谢谢。
答案 14 :(得分:0)
只需尝试:
http://ipaddressofpcwhichhasdatabase:portnumber(80 by default)/filename.extension
答案 15 :(得分:0)
使用本地IP的主机
打开CMD:ipconfig
无线LAN适配器Wi-Fi: IPv4地址。 。 。 。 。 。 。 。 。 。 。 :xx.xxx.xx.xxx
答案 16 :(得分:0)
要通过网络运行 Nodejs 服务器
const port = process.env.PORT || 3000;
const server = http.createServer(
server.listen(port, '0.0.0.0', () => console.log(`Server started on port ${port}`)
));
运行http://yournetworkipaddress:3000以通过局域网(LAN)访问您的应用程序
找到您的网络IP的步骤。
MacOS
答案 17 :(得分:0)
先决条件:您的网站当前位于http://localhost:8081/
上,其工具类似live-server
在同一网络中,您可以使用当前的IP地址或主机名访问计算机。您可以通过向该IP发送一个ipconfig | grep IPv4
来找到运行ping -a
的IP地址或主机名。
http://192.128.1.18:80/
http://hostname:80/
注意:为了获得最佳效果,请使用端口80,连接到专用网络,然后检查防火墙设置。
选项1 -您可以使用ngrok通过ngrok面向公众的端口提供端口转发
Download ngrok并运行以下命令:
$ ./ngrok http 8081
选项2 -您可以使用localhost.run通过以下命令创建ssh隧道:
ssh -R 80:localhost:8081 kylemit@ssh.localhost.run
要将浏览器开发工具与连接的设备连接,请按照Get Started with Remote Debugging Android Devices
上的说明进行操作。打开开发人员工具>更多工具>远程调试(如果Device Not Detected,请在此处尝试)
找到您的站点,然后单击“检查”,这将打开一个新的检查器窗口
答案 18 :(得分:0)
我遇到了这个问题。我在虚拟机中使用XAMPP,该虚拟机的网络设置为“ NAT”。我将其更改为“桥接”,问题得到解决。
答案 19 :(得分:0)
替换
在Require Local
文件中Require all granted
xampp\apache\conf\extra\httpd-xampp.conf
。{/ p>
答案 20 :(得分:0)
<Files ".ht*">
Require all denied
</Files>
replace to
<Files ".ht*">
Require local
</Files>
答案 21 :(得分:0)
首先转到命令提示符并键入
Notepad C:/windows/system32/drivers/etc/hosts
然后将您的IP地址添加到您网站的网址下方。
其次,您转到命令提示符并键入
notepad c:/xampp/bin/apache/apache2.4.18/conf/extra/httpd-vhosts.conf
然后在下面添加
documentroot "Directory of your site"
Allow from all
Require all granted
答案 22 :(得分:-1)
所以我试图解决类似的问题,连接到我自己的局域网上完全不同的服务器,这样当电源中断然后恢复时我的服务器恢复在线状态,其他系统仍然可以与自动化连接。但是,我的问题是DHCP偶尔为我的服务器提供差异IP。这个线程用NAMESERVER回答了我的问题,Windows本身就有这个问题。我通过批处理文件直接连接到我的服务器IP add http://192.168.1.5来初始化连接,但是当出现电源问题时它就无法连接。我将.bat文件更改为指向http://DESKTOP-actualnamewhereserver:port并完成。问题解决了。如果我没有更改我的计算机名称,那么当DHCP将DESKTOP-actualnamewhere服务器更新为新IP地址时,它仍将在LAN上识别为自己的名称,因此无论其IP地址如何都能够接受连接。只需向无线局域网上的其他人提供托管Apache服务器的PC的名称,并告诉其名称为DESKTOP-DOUGHFACTORYHUT,他们将键入http://DOUGHFACTORYHUT:80或您的apache配置设置为托管的任何端口号,如LOCALHOST: 80基本上与您为服务器设置的DHCP或STATIC IP分配的本地动态IP地址相同。
答案 23 :(得分:-2)
我完全同意BugFinder。
简单来说,只需将ip地址 192.168.1.56 放在 192.168.1.2 上运行的浏览器中!
如果它不起作用,则有以下可能的原因:
网络连接问题:
防火墙问题: 您的Windows防火墙设置没有XAMPP(apache)的允许规则。 (最可能的问题)
Apache配置问题。 : 您的apache配置为仅侦听本地请求。
与其他服务器(IIS等)的端口冲突
如果以上所有方法都不起作用那么可能是你的apache server.try上有一些配置问题要找到它,否则只需重新安装它并将所有php文件(htdocs)传输到新安装的XAMPP / WAMP。