在当前堆栈上,我有 centos 6.5 (64 位) 和 PHP 5.3 可用。
我是一名 Linux 新手,需要将 php 升级到 PHP 5.5。
尝试以下但返回错误:
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
然后根据remi-php55
(在/etc/yum.repos.d/remi.repo
)节
enabled=1
然后yum clean all
yum update -y
返回的错误粘贴在以下 pastebin 中http://pastebin.com/ehuHibhy
并且 php 没有升级,有什么解决方法吗?
编辑1:
启用 remi repo 和 remi-php55 会导致删除 php repo 错误。
更新踪迹:http://pastebin.com/J8sN5Z9Z
但是PHP版本尚未升级。
答案1
您已启用 remi-php55 存储库,但这取决于 remi 存储库是否也已启用。您也需要启用它。
答案2
当您安装了 cPanel 或 Plesk 时,您真的不应该尝试升级这样的单个组件。它们控制服务器的所有方面,您应该按照它们支持的方式升级 PHP。
答案3
如果您可以将自己限制在 PHP 5.4,则可以使用“软件集合 (SCL)”存储库。此报告将侧载较新的软件包版本(例如:php54),您可以在每个进程的基础上使用它。
简而言之:
- 启用 SCL 存储库
yum 安装 -y centos-release-SCL.x86_64
yum 安装 -y php54.x86_64 php54-php-mysqlnd
在 /var/www/cgi-bin/php54-wrapper 中创建一个 PHP 包装器脚本
#!/bin/bash source /opt/rh/php54/enable exec php-cgi
给予包装脚本适当的权限
restorecon -RF /var/www/cgi-bin/php54-wrapper
chown apache:apache /var/www/cgi-bin/php54-wrapper
chmod ugo-rwx /var/www/cgi-bin/php54-wrapper
chmod ug+rx /var/www/cgi-bin/php54-wrapper
配置适当的虚拟主机以使用新的 php 版本
AddHandler php-cgi .php Action php-cgi /cgi-bin/php54-wrapper <Location /> Options +ExecCGI </Location>