我已经开发了一个API
,可以在loc.api
本地使用,也可以在live.api
上制作(显然这些域只是一个例子)。
API在经典的apache服务器上本地运行。
现在我使用Laravel
玩API
。连接到live.api
没问题(因为我正在使用真实域名),但无法连接到我的local API
。
我猜这只是一个host
配置问题,因为Homestead
无法连接到我的cumputer上的普通apache服务器。
如果是这种情况,我只需要定义IP
链接到loc.api
,但我不知道我应该在那里使用什么IP。
总结一下,在我的本地loc.api
服务器上运行apache
没问题,运行live.api没问题,单独运行Laravel
或连接到{{1}没问题},但似乎不能让live.api
与Laravel
有什么想法吗?
答案 0 :(得分:1)
Homestead运行类似于虚拟机的东西。虚拟机的localhost确实是虚拟机内部使用的本地IP地址。要与主机(运行虚拟机的计算机)通信,您需要使用默认网关IP地址。这是虚拟机用于引用其主机系统的IP地址。
默认值因虚拟机的配置而异。理想情况下,如果您在本地主机上正常设置API并通过127.0.0.1(或localhost)在本地访问它,那么将本地站点配置设置为默认网关将起作用。
但是,如果您通过虚拟主机设置API并通过local.api
或类似主机访问它,则需要修改虚拟机的/etc/hosts
文件(因为宅基地正在为Ubuntu服务) OS)并输入类似
<gateway IP> local.api
通过这种方式,您可以使用local.api
作为API主机地址,该地址将解析为网关IP并使用正确的主机名调用API。