[英]How do I upgrade PHP in Mac OS X?
我觉得这是一个非常迟钝的问题,但奇怪的是,这个问题的记录很差。
我想升级PHP,但是有几个问题:
locate php
表明可能有很多依赖项。我在 Leopard 上运行。 我有一种感觉,Apple 不想让您升级。 购买 Snow Leopard 并升级会解决这个问题(以及未来的类似问题)吗?
您可能想查看 Marc Liyanage 的 PHP 包。 它带有一个很好的 Mac OS X 安装程序包,您可以双击它。 他保持最新状态。
此外,虽然升级到 Snow Leopard 不会帮助您在未来进行 PHP 更新,但它可能会为您提供更新版本的 PHP。 我运行的是 OS X 10.6.2,它有 PHP 5.3.0。
我用这个: https : //github.com/Homebrew/homebrew-php
命令是:
$ xcode-select --install
$ brew tap homebrew/dupes
$ brew tap homebrew/versions
$ brew tap homebrew/homebrew-php
$ brew options php56
$ brew install php56
然后在你的.bash_profile
或.bashrc
配置
# Homebrew PHP CLI
export PATH="$(brew --prefix homebrew/php/php56)/bin:$PATH"
我认为一种简单的方法是:
1 - 检查您当前的 PHP 在哪里:
$ which php
$ /usr/local/bin/php
你看? 通常,我们运行的命令是 /usr/local/bin 中的链接,所以...
2 - 取消链接当前的 PHP 链接
unlink /usr/local/bin/php
如果你喜欢,在取消链接之前,检查路径然后删除 php 文件(做ls -al /usr/local/bin
| grep php 然后rm -rf
到所需的路径)
3 - 安装 PHP 7.1
curl -s http://php-osx.liip.ch/install.sh | bash -s 7.1
4 - 创建新链接(使用您已安装的 php 7.1 bin)
ln /usr/local/php5-7.1.9-20170914-100859/bin/php /usr/local/bin/php
就像我说的,这是我认为的一种简单方法。
没有内置的包管理器。 MacPorts 不会将 php 识别为已安装的软件包,因为它没有安装 PHP 本身。
您仍然可以使用 MacPorts 安装它。 sudo port install php52
(或您想要的任何版本)将安装 PHP。
它不会覆盖 Apple 提供的版本。 它将安装在/opt/local
。 您可以将/opt/local
添加到$PATH
的开头,并在您的 Apache 配置中使用 MacPorts 版本。
在我继续之前,我有OS X Server的最新版本 (v5.0.15) (是的,太可怕了,我知道……但是,Web 服务器似乎工作正常) 。 我搜索了好几天试图更新(或至少让 Apache 指向)新版本的 PHP。 我的mcrypt
和其他扩展一起不起作用,我从http://php-osx.liip.ch/和其他教程无数次安装和重新安装 PHP ,直到我终于注意到在评论中写的一点信息在 OS X Server 保留的许多不同.conf
文件中,OS X Server 在加载 Apache httpd.conf
(位于/etc/apache2/httpd.conf
)之前加载它自己的自定义.conf
文件。 服务器文件位于:
/Library/Server/Web/Config/apache2/httpd_server_app.conf
当你打开这个文件时,你必须像这样注释掉这一行:
#LoadModule php5_module libexec/apache2/libphp5.so
然后添加正确的路径(如果您通过http://php-osx.liip.ch/链接安装,则应该已经安装了) :
LoadModule php5_module /usr/local/php5/libphp5.so
经过这次修改,我的PHP终于加载了正确的PHP安装。 话虽如此,如果事情变得不稳定,那可能是因为 OS X 在安装 OS X 时就可以处理 PHP 的本机安装。 要恢复,只需撤消上面的更改。
无论如何,希望这对其他人花费无数小时有帮助。
升级到 Snow Leopard 并不能解决保持 PHP 最新的主要问题。 Apple 并不总是将其捆绑的第三方软件与操作系统更新保持同步。 依靠 Apple 为您提供所需的错误修复/安全更新是自找麻烦。
此外,我建议通过 MacPorts 进行安装(并进行必要的配置以使用它而不是Apple 的 PHP),而不是尝试升级 Apple 提供的 PHP。 你对/usr/bin
所做的任何事情/usr/bin
可能被未来的苹果更新覆盖。
节省击键,这适用于 MacOS Sierra:
$ brew install homebrew/php/php71
$ /usr/local/opt/php71/bin/php -v
PHP 7.1.4 (cli) (built: Apr 14 2017 15:02:16) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
使用以下命令在终端中检查您当前的 php 版本,
$ php -v
您会在终端中看到当前的 php 版本,如果您想使用 php concat 升级您的 php 版本,则在终端中运行下一个命令,版本如下,
$ brew install homebrew/php/php71
如果您完成安装 php 版本升级并运行命令,请重新启动终端。
$ php -v
现在您可以在终端中看到当前的 php 版本....谢谢
使用这个命令:
curl -s http://php-osx.liip.ch/install.sh | bash -s 7.0
您可以使用 curl 来更新 php 版本。
curl -s http://php-osx.liip.ch/install.sh | bash -s 7.3
最后一步:
export PATH=/usr/local/php5/bin:$PATH
检查升级版本
php -v
升级的最佳方法是从源代码编译它
看这个可能对你有帮助的教程
http://www.computersnyou.com/2012/09/how-to-upgrade-php-in-mac-osx-compiling.html
将 php7 升级到最新的稳定版本brew upgrade php7
或 php5.X brew upgrade php7
到最新的稳定版本
brew upgrade php56
使用brew list
检查已安装的版本
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.