macOS 10.13.6通过Homebrew安装PHP8.0后版本无法切换至8.0.9求助
概况
我使用的操作系统为macOS 10.13.6,因需要运行依赖PHP 8环境的Laravel 8,我通过Homebrew安装php@8.0,执行命令如下:
$ brew update $ brew tap shivammathur/php $ brew install shivammathur/php/php@8.0
PHP 8安装成功后,我执行了如下命令:
$ brew link --overwrite --force php@8.0 Linking /usr/local/Cellar/php/8.0.9... 24 symlinks created.
之后我编辑.bash_profile文件,将*/usr/local/Cellar/php/8.0.9/bin和/usr/local/Cellar/php/8.0.9/sbin导出到$PATH*系统变量,保存变更后执行命令:
$ source .bash_profile restart $ php -v PHP 7.1.33 (cli) (built: Jan 18 2020 13:49:07) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
后续尝试的解决操作
之后我在StackOverflow查找相关解决方案,第一个方案提到:
告知终端新安装PHP的路径。
export PATH="/usr/local/opt/php@8.0/sbin:$PATH"
由于*/usr/local/opt/php@8.0是/usr/local/Cellar/php/8.0.9/*的软链接,理论上应该生效但实际无效,多次调整$PATH配置都没有结果,我继续查找解决方案,第二个方案提到:
需要让Apache使用你新安装的PHP版本。
我不确定是否需要该操作,但还是尝试在Apache的httpd.conf文件中添加了如下配置:
LoadModule php8_module /usr/local/Cellar/php/8.0.9/lib/httpd/modules/libphp.so
之后执行命令:
$ sudo apachectl restart
仍然没有效果。第三个方案给出的操作步骤如下:
- brew install php@<目标版本包>
- brew link --force php@<目标版本包>
- brew services start php@<目标版本包>
- export PATH="/usr/local/opt/php@<目标版本包>/bin:$PATH"
- export PATH="/usr/local/opt/php@<目标版本包>/sbin:$PATH"
执行上述步骤后依旧无效。目前我卡在这个问题上不知道如何处理,恳请各位帮忙解答,谢谢。
补充说明:上述步骤用于安装切换php@7.4是可以正常生效的,看起来运行macOS High Sierra系统的设备无法升级到PHP 8。
内容的提问来源于stack exchange,提问作者Mikich Esaian
相关产品推荐
相关产品推荐

