Laravel Sail 如何更改本地开发域

问题描述

我最近决定尝试 Laravel Sail,而不是我通常的 Vagrant/Homestead 设置。一切似乎都布置得很漂亮而且很容易,但我似乎找不到在本地环境中更改域名的解决方法

我尝试使用 APP_PORT=89 sail up 命令在端口 89 上为应用程序提供服务,该命令使用 localhost:89 可以正常工作,但是在启动项目之前尝试记住哪个端口是哪个项目似乎很麻烦。

我正在寻找一种更改认端口的方法,这样我就不必每次要航行时都指定要服务的端口。然后我可以为 laravel.test 使用 localhost:89 这样的别名,这样我就不必再记住端口了,我只需输入项目名称即可。

我尝试更改 etc/hosts 文件,但发现它实际上对不同的端口没有帮助

例如,我实际上是在尝试通过在浏览器上输入“laravel.test”来访问我的项目。

也欢迎任何其他建议来实现这一目标。 谢谢

**更新** 在所有这些搜索之后,我实际上决定改变我的工作流程,一次只运行一个应用程序,所以现在我只使用本地主机,我的 cpu 和 RAM 喜欢它,所以如果你在这里从宅基地搬到码头,问问你自己真的需要同时运行所有这些应用程序。如果答案是 yes 研究一下,如果不只是使用 localhost,那也没什么问题

解决方法

要更改 Sail 中默认的“laravel.test”和端口的本地名称,请将以下内容添加到您的 .env 文件中:
APP_SERVICE="yourProject.local"
APP_PORT=89
这将在您构建(或使用 sail build --no-cache 重建)您的 Sail 容器时生效。

为了能够在您的网络浏览器中输入“yourProject.local”并让它加载您的网页,请确保通过添加
来更新您的主机文件 127.0.0.1 yourProject.local
到您的主机文件。此文件位于:

  • Windows 10 – “C:\Windows\System32\drivers\etc\hosts”
  • Linux – “/etc/hosts”
  • Mac OS X – “/private/etc/hosts”

您需要关闭所有浏览器实例并在更改主机文件后重新打开。有了这个,尝试输入带有和不带有端口号的别名以查看哪个有效。由于您已经通过 .env 设置了端口,因此您可能不需要将其包含在别名中。

如果这不起作用,请更改 .env APP_URL=http://yourProject.local:89

好的另一个选项,在 /routes/web.php 中,我假设您设置了一个可以返回视图或调用控制器方法的路由。你可以测试看看你是否可以拥有这个 'return redirect('http://yourProject.local:89');' 这可能涉及到一些路由/控制器的问题,但这可能值得研究。