我尝试使用以下命令在Amazon Linux上安装php 5.6:
$ yum install php56
No package php56 available.
Error: Nothing to do
我是否需要添加存储库才能执行此操作?我已经搜索了这个,但无法找到任何来源。我还想知道哪个Apache版本适用于这个版本的php?
答案 0 :(得分:101)
以下是我在Amazon Linux中用于将PHP版本从5.3更新到5.6的步骤
步骤(仅在需要时使用 sudo )
1)删除OLD Apache
sudo service httpd stop
sudo yum erase httpd httpd-tools apr apr-util
2)删除旧的PHP
sudo yum remove php-*
3)安装PHP 5.6(Apache 2.4将自动安装)
sudo yum install php56
4)确保安装了所有必需的PHP扩展
yum list installed | grep php
5)如果没有,则使用
安装它们sudo yum install php56-xml php56-xmlrpc php56-soap php56-gd
6)列出其他可用的php扩展
yum search php56
7)PHP 5.6 MySQL扩展(假设您已经安装了MySQL)
sudo yum install php56-mysqlnd
(注意:它不是php56-mysql)
8)启动/重启Apache
sudo service httpd start
sudo service httpd restart
9)检查版本
php -v
httpd -v
答案 1 :(得分:13)
AWS尚未打包php 5.6。您需要从ALAMI存储库安装php 5.5,或者从源代码构建5.6。
要列出可用的5.5套餐,请使用yum search php55
php55
是基础包,但您也可能需要列出其他包。
当5.6准备就绪时,您将能够找到它
yum search php56
您可以在php.net找到有关构建来源的信息,特别是Installation on Unix Systems / Apache 2.x on Unix Systems
答案 2 :(得分:2)
只需要更新答案, 我尝试了建议的解决方案,但是没有用。
很难安装5.6
我今天发现安装7.2的正确命令是
amazon-linux-extras install php7.2
它可以安装和升级所有内容,而不会带来麻烦。
答案 3 :(得分:1)
@Daniele帖子中的其他部分,用于解决此问题。
这比问题更多的是帮助,但是可以帮助其他人解决我所遇到的问题。我需要在EC2上安装Wordpress网站,但是当我尝试使用公共IP地址运行它时,这是个问题。我尝试安装php 5.6,但不可能。
我找到了使用命令安装php 7.2的解决方案:
**amazon-linux-extras install php7.2**
要检查确实是php 7.2版本,请使用:
php -version or php -v
此后,您需要停止apache服务,停止命令为:
service httpd stop
再次启动apache服务:
service httpd start
在您的AWS控制台中,转到Instance,找到公共IP地址,复制并在浏览器中打开。您应该会看到WordPress页面。创建EC2实例时,可以在高级部分(引导)中安装WordPress。
答案 4 :(得分:1)
使用 repo epo.ius.io 在 amazonlinux2 上成功安装了 php56 和所需的 php 模块。
sudo yum -y update
sudo yum install –y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
wget https://repo.ius.io/ius-release-el7.rpm
sudo rpm -Uvh ius-release*.rpm
sudo yum -y update
sudo yum install --enablerepo=ius-archive php56u php56u-opcache php56u-xml php56u-mcrypt php56u-gd php56u-devel php56u-mysql php56u-intl php56u-mbstring php56u-bcmath php56u-soap
使用以下命令检查 PHP 版本
[root@ip-10-10-1-47 ~]# php -v
PHP 5.6.40 (cli) (built: Jan 11 2019 10:27:04)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
安装php模块
yum install --enablerepo=ius-archive php56u-{Module Name}
验证模块名称
php -m
php -m | grep {Module Name}
example to check php yaml module
php -m | grep yaml
答案 5 :(得分:0)
尝试一下:
sudo yum -y update
sudo yum install –y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo wget https://centos7.iuscommunity.org/ius-release.rpm
sudo rpm -Uvh ius-release*.rpm
sudo yum -y update
安装软件包时,需要在php56的末尾添加u。这是一些您可以安装的软件包的示例。
sudo yum -y install php56u php56u-opcache php56u-xml \
php56u-mcrypt php56u-gd php56u-devel php56u-mysql \
php56u-intl php56u-mbstring php56u-bcmath php56u-soap