Laravel Homestead可以同时运行多个网站,可以选择在本地访问哪一个。

10 浏览
0 Comments

Laravel Homestead可以同时运行多个网站,可以选择在本地访问哪一个。

我在laravel homestead中有多个站点。现在,我想通过我的本地网络IP访问特定的站点。但是我总是得到我不想要的站点...

homestead.yaml

sites:

- map: mdb.local

to: /home/vagrant/code/mdb/public

type: "apache"

- map: zz.tested

to: /home/vagrant/code/abc/public

type: "apache"

- map: 192.168.10.10

to: /home/vagrant/code/mdb/public

以及我的hosts文件

192.168.10.10 mdb.local
192.168.10.10 zz.tested

我可以通过域名在我的电脑上访问这两个站点,但是当通过本地网络的IP访问时,我总是得到`abc`。我需要做什么改变才能在移动设备上访问`mdb`,并且只能在我的电脑上访问`abc`?

我阅读了这个StackOverflow问题,但是 - 你可以看到我对这个解决方案的实施 - 它没有帮助解决这个问题。

0
0 Comments

Laravel Homestead是一个用于本地开发的虚拟机环境,可以同时运行多个站点。然而,在默认配置下,只能访问其中一个站点。为了解决这个问题,我们可以通过配置第二个应用/站点在端口81而不是端口80上运行,并设置端口转发,将8001或8100转发到81。

具体的配置如下所示:

sites:

- map: mdb.local

to: /home/vagrant/code/mdb/public

type: "apache"

port: 81

- map: zz.tested

to: /home/vagrant/code/abc/public

type: "apache"

ports:

- send: 8100

to: 81

通过这样的配置,你可以通过正确的端口访问你的`mdb`应用程序。在Homestead内部,端口是81。在外部,端口是8100。无论你是否使用主机机器的IP地址(例如`http://192.168.1.5:8100`)还是hosts条目(例如`http://mdb.local:8100`),都需要指定端口。

你可以使用任何未使用的端口,不一定是81、8001和8100。

需要注意的是,从宿主机上,你显然需要通过端口81而不是默认的80来访问`mdb.local`应用程序。

0
0 Comments

Laravel Homestead是一个非常方便的开发环境,可以轻松地搭建多个网站。然而,有一个问题是当你在本地访问多个网站时,无法选择要访问哪个网站。这个问题的原因是Apache总是选择字母顺序中第一个网站作为默认主机。解决这个问题的方法是创建一个名为000default或类似的主机,这样当没有域名的时候就会返回该主机。

在Laravel Homestead中,你可以通过以下步骤解决这个问题:

1. 打开Homestead.yaml文件,该文件位于Homestead文件夹中。你可以使用文本编辑器打开它。

2. 在sites部分,添加一个新的网站配置。你可以为每个网站配置一个域名和路径。例如:

sites:

- map: homestead.test

to: /home/vagrant/Code/Laravel/public

- map: another-site.test

to: /home/vagrant/Code/AnotherSite/public

这里我们添加了两个网站配置,一个是homestead.test,另一个是another-site.test。你可以根据实际情况添加更多的网站配置。

3. 在Homestead.yaml文件的最后,添加一行配置来指定默认主机。例如:

   default: 000default
   

这里我们将默认主机设置为000default。你可以选择其他名称,只要它在字母顺序中排在第一个即可。

4. 保存Homestead.yaml文件并退出编辑器。

5. 打开终端或命令提示符,进入Homestead文件夹。

6. 运行以下命令来重新加载Homestead配置:

   vagrant reload --provision
   

这将重新加载Homestead配置并应用新的设置。

现在,当你在浏览器中访问本地网站时,你可以选择要访问的网站。如果你没有指定域名,将会自动返回默认主机000default

通过以上步骤,你可以轻松地在Laravel Homestead中管理多个网站,并选择要在本地访问的网站。

0