首页 > 解决方案 > 无法确定链接的 PHP - Homebrew

问题描述

首先,我知道在 stackoverflow 上已经有这样的帖子,但我还没有找到解决我的特定问题的方法。

我正在尝试在我的 mac(OS High Sierra)上安装 laravel/valet,但我不断收到此错误:

在 Brew.php 第 182 行:无法确定链接的 PHP。

现在我正在使用已经安装在我的 mac 上的 PHP,我没有使用 homebrew 安装 PHP,我发现的所有解决方案似乎都是通过 homebrew 处理 php 安装。例如brew link php71,这对我不起作用。

编辑: 我必须通过自制软件安装最新版本的 PHP (7.2) 才能使其工作,但是在过去我坚持使用 7.1 的原因中,我遇到了 laravel 和 PHP 7.2 的问题,所以想知道是否有办法我仍然可以使用 7.1

标签: homebrewlaravel-valetmacos-high-sierra

解决方案


代客需要Homebrew。

MacOS 附带的 php 版本通常已经过时,并且没有收到应有的更新。

可以在此处找到安装 Valet 的说明:https ://laravel.com/docs/master/valet#installation

总结一下:

Valet 需要 macOS 和 Homebrew。在安装之前,您应该确保没有其他程序(例如 Apache 或 Nginx)绑定到本地计算机的 80 端口。

  • 使用 brew update 安装或更新 Homebrew 到最新版本。
  • 通过 brew install php 使用 Homebrew 安装 PHP 7.3。
  • 安装作曲家。
  • 通过 Composer 安装 Valet composer global require laravel/valet。确保 ~/.composer/vendor/bin 目录位于系统的“PATH”中。
  • 运行valet install命令。这将配置和安装 Valet 和 DnsMasq,并注册 Valet 的守护程序以在系统启动时启动。

安装 Valet 后,尝试使用 ping foobar.test 之类的命令在终端上 ping 任何 *.test 域。如果 Valet 安装正确,您应该会看到该域在 127.0.0.1 上响应。

每次机器启动时,Valet 都会自动启动它的守护进程。初始代客安装完成后,无需再次运行代客启动或代客安装。

如果完成上述操作后您仍然发现“无法确定链接的 PHP”错误,那么此过程将修复它:

  • brew list|grep php

这将为您提供如下输出:

php
php@5.6
php@7.1
php@7.2
php@7.3
valet-php@5.6
valet-php@7.1
valet-php@7.2
valet-php@7.3

你可能只有其中一些。对于每个 php 版本,请执行以下操作:

  • brew unlink {{FILL PHP VERSION FROM ABOVE}}

这将手动取消链接您拥有的任何自制 php 版本。

然后链接您要使用的版本:

  • brew link {{FILL YOUR CHOOSEN PHP VERSION HERE}}

然后只需重新启动代客。

  • valet restart

推荐阅读