通过LANnetworking从另一台计算机访问本地主机(xampp) – 如何?
我刚在家里build立了一个Wi-Finetworking。 我的桌面计算机上有所有的文件(192.168.1.56),并且要从另一台计算机(192.168.1.2)上访问本地主机。
在我的桌面上,我可以通过正常的http:// localhost访问本地主机 。 Apache像往常一样在端口80上运行。
到底要做什么才能做到这一点? 网上有文档,但是他们要么不工作,要么太碎片化,难以理解。
我想我必须改变我的Apache的httpd.conf文件和hosts文件。 任何想法,作出什么样的改变?
本地主机只是一个给出的回环名称,例如它像自称为“我”..
要从其他计算机上查看它,很可能只需要执行http://192.168.1.56或http::// myPcsName,如果这不起作用,则可能是计算机上正在运行防火墙,或者httpd.conf只在127.0.0.1上进行监听
感谢您的详细解释。
只是为了详细说明,在Windows中,转到控制面板 – >防火墙,在例外“添加HTTP和端口80”。 然后在服务中勾选“http(web服务器端口80)”和“https(web服务器端口443)”,只要你需要https也可以。 好的,好的,closures
然后转到networking上的任何一台计算机,然后在浏览器中键入http:// computer-name (更改防火墙并在其上运行xampp),然后开心的日子:)
当您希望将您的PHP应用程序安装在LAN服务器(而不是Web)上时,
- 获取服务器的内部IP或静态IP(例如:192.168.1.193)
- 在记事本中打开XAMPP> apache> conf> httpd.conf文件
- search听80
- 上面的行会读取像#Listen 0.0.0.0:80 / 12.34.56.78:80
- 更改IP地址并将其replace为静态IP
- 保存httpd.conf文件,确保服务器指向#Listen 192.168.1.193:80
- 在应用程序的根目录config.php(db连接)中将localhostreplace为服务器的IP地址
注意:如果安装了防火墙,请确保将http端口80和8080添加到例外并允许侦听。 转到控制面板> Windows防火墙>允许程序通过Windows防火墙进行通信>添加另一个程序名称:http端口:80另外添加一个http – 8080
如果IIS(Microsoft .Net应用程序Internet信息服务器)与服务器上的任何Microsoft .Net应用程序一起安装,那么它已经占用了80端口。 在这种情况下,请将#Listen 192.168.1.193:80更改为#Listen 192.168.1.193:8080
希望这可以帮助! 🙂
这应该是所有你需要的基本设置
这种configuration不会破坏本地主机上的phpMyAdmin
运行服务器的设备上build议使用静态IP
这个例子使用192.168.1.x IP。 您的networkingconfiguration可能使用不同的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,例如Allow from 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>
从托盘图标重新启动所有服务和放置在线
有时候你的防火墙可能是问题所在。 确保你已经禁用了防病毒防火墙监控。 它为我工作。
如果您使用XAMPP 1.8.3导航到文件httpd-xampp.conf并search“##New XAMPP security concept#server-status | server-info))”>
Require local ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </LocationMatch>
“
剪下这段代码并保存在某个地方,以备日后使用,例如恢复这个function(记住删除这段代码会使你的计算机变得脆弱)。 在httpd-xampp.conf保存更改,在XAMPP上重新启动服务,就是这样。
如果你连接到Wi-Finetworking,那么它更简单。 只需find您已连接到Wi-Fi的IP。 例如:
你的IP是“10.10.55.67”。
然后在你的机器上启动xampp服务器。
然后在任何连接到相同Wi-Fi n / w的计算机上,键入
http://your-ip
例如: http://10.10.55.67
: http://10.10.55.67
确保按照本页其他答案中所述设置了appacheconfiguration后,您可能还需要通过防火墙打开TCP端口,如下所述:
这个工具节省了我很多,因为我的机器上没有pipe理权限,并且已经安装了nodejs。 出于某种原因,我的networking上的configuration不允许我访问其他机器,只需在浏览器上指向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
这是我在Windows 10上为我做的工作:
1)打windows + r并键入cmd 。 在命令提示符下键入ipconfig
2)find你的ipv4地址,并将你的url重命名为该ip,例如: http : //192.168.0.2/example 。
3)现在确保你的防火墙可以访问Apache HTTP Server 。 search窗口的“ 允许通过Windows防火墙的应用程序 ”点击它,然后在右上angular点击更改设置 ,并确保Apache HTTP服务器左侧有一个打勾,一个在私人或公共。 希望它有帮助
现在您可以从局域网中的其他电脑访问该网站
转到任务栏中的xampp-control
xampp-control -> Apache --> Config --> httpd.conf
记事本将打开与configuration文件
search
听80
上面有一行,会有这样的:12.34.56:80
更改
12.34.56:80 --> <your_ip_address eg:192.168.1.5>:80
重新启动Apache服务,并检查它,希望它应该工作…
首先你去命令提示符并键入
Notepad C:/windows/system32/drivers/etc/hosts
然后添加您的IP地址下面然后您的网站的url。
其次你去命令提示符并键入notepad c:/xampp/bin/apache/apache2.4.18/conf/extra/httpd-vhosts.conf
然后添加下面
documentroot "Directory of your site" Allow from all Require all granted
<Files ".ht*"> Require all denied </Files> replace to <Files ".ht*"> Require local </Files>
首先去您的Windows机器的networking和共享中心,只需按照一些步骤来获得您的IPv4地址。
将IPv4地址放在另一台计算机浏览器上。 例如,http // 192.168.0.102
注意
- 打开你的Windows防火墙(如果不行,否则可选)
我完全同意BugFinder。
简单地说,只需要将IP地址192.168.1.56放在192.168.1.2的浏览器上就可以了!
如果不起作用,那么有以下可能的原因:
-
networking连接问题:
- 首先在192.168.1.2计算机的命令提示符/terminal上使用ping 192.168.1.56命令检查你的networking连通性。
-
防火墙问题:你的Windows防火墙设置没有允许规则的XAMPP(Apache)。 (最可能的问题)
- (解决scheme)转到高级防火墙设置,并为Apache可执行文件添join站和出站规则。
-
Apacheconfiguration问题。 :您的apache被configuration为只侦听本地请求。
- (解决scheme)你可以通过打开httpd.conf文件并将Listen 127.0.0.1:80replace为Listen 80或* Listen :80
-
端口冲突与其他服务器(IIS等)
- (解决scheme)closuresApache服务器,然后在浏览器中打开本地主机。 如果获得任何响应,则closures该服务器,然后启动Apache。
如果以上所有都不起作用,那么你的apache server.try可能会出现一些configuration问题,否则只需重新安装,并将所有php文件(htdocs)传输到新安装的XAMPP / WAMP。