我的机器和 Android 设备在同一个网络上。
- 机器IP:
192.168.0.11
- Homestead 运行的IP:
192.168.10.10
如果我在我的 Android 设备上输入 192.168.0.11:8000
,我只能使用一个网站。
如何输入存储在 Homestead 中的所有站点?
这是我的 Homestead.yaml
文件:
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: ~/Homestead-Projects
to: /home/vagrant/Homestead-Projects
sites:
- map: site1.com
to: /home/vagrant/Homestead-Projects/Site1/public
- map: site2.app
to: /home/vagrant/Homestead-Projects/Site2/public
databases:
- homestead
- db_site1
- db_site2
variables:
- key: APP_ENV
value: local
# blackfire:
# - id: foo
# token: bar
# client-id: foo
# client-token: bar
# ports:
# - send: 93000
# to: 9300
# - send: 7777
# to: 777
# protocol: udp
这是我的hosts
文件:
127.0.0.1 localhost
127.0.1.1 host
#Virtual Hosts on Homestead
192.168.10.10 site1.com
192.168.10.10 site2.com
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
最佳答案
tl;dr
您必须在远程机器上的主机文件中为每个站点添加一行(就像在运行 Homestead 的服务器中一样),但要使用服务器的 IP 地址。然后只需输入 sitename.local:8000
。
例子
在您的例子中,服务器的 IP 是 192.168.0.11
。在此服务器中,Homestead 为 192.168.10.10
上的请求提供服务。所以在服务器的主机文件中你有这些行:
192.168.10.10 site1.com
192.168.10.10 site2.com
您必须将这些行复制到远程 PC 的主机文件,然后将 IP 地址替换为服务器的 IP:192.168.0.11
。
192.168.0.11 site1.com
192.168.0.11 site2.com
根据您的操作系统,您可能需要重新启动电脑或 DNS 服务。之后,您可以从远程 PC 访问这些地址中的站点:
site1.com:8000
site2.com:8000
注意事项
请记住,编辑(写入)主机文件需要 super 用户/管理员权限。如果您有权访问管理员帐户,这在 PC 中很容易解决,但在移动设备上可能会很复杂。对于 Android,请查看以下问题:
关于php - 如何在其他设备上访问 Laravel Homestead?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35976448/