编程语言
首页 > 编程语言> > php-如何在其他设备上访问Laravel Homestead?

php-如何在其他设备上访问Laravel Homestead?

作者:互联网

我的机器和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

这是我的主机文件:

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;博士

您必须在远程计算机上的主机文件中为每个站点添加一行(就像在运行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

根据您的操作系统,您可能必须重新启动PC或DNS服务.之后,您可以通过以下地址从远程PC访问站点:

site1.com:8000
site2.com:8000

注意

请记住,编辑(写入)hosts文件需要超级用户/管理员权限.如果您可以访问管理员帐户,则在PC上很容易解决,但在移动设备上可能很复杂.对于Android,请查看以下问题:

> Android Enthusiasts: How to edit ‘etc/hosts’ file?
> Stack Overflow: How to change the hosts file on android?

标签:homestead,php,laravel,networking,remote-access
来源: https://codeday.me/bug/20191011/1889991.html