Table of Contents
Connect your Amazon Web Services (AWS) instance
Before installing PHP, you must update your privileges to root user (sudo su).
Let’s get PHP installed on the EC2 instance.
READ MORE
Install PHP 8.0 on Ubuntu 18.04 / 20.04
Installing the Apache Webserver
$ yum install httpd -y
Check server running status
$ service httpd status
If you notice that the server is inactive, run the command below to start it.
$ service httpd start
Now copy and paste the EC2 Instance Public DNS, such as ec2-54-xxx-xxx-xxx.compute-1.amazonaws.com, into your browser and see if the apache server is up and running.
PHP 7.4 installation on server
Check for the inclusion of the amazon-linux-extras package:
$ which amazon-linux-
extras/usr/bin/amazon-linux-extras
Install the package that will configure the repository if the command does not return some output:
$ sudo yum install -y amazon-linux-extras
PHP 7.4, 7.3, 7.2 installations on Amazon AWS EC2
Let’s double-check that our AWS EC2 machine supports PHP 7.x:
$ sudo amazon-linux-extras | grep php
15 php7.2 available \
17 lamp-mariadb10.2-php7.2 available \
31 php7.3 available \
42 php7.4 available [ =stable
We’ll enable the PHP 7.4 topic in this case, as we can see all PHP 7 topics.
$ sudo amazon-linux-extras enable php7.4
Now, from the repository, install PHP packages.
$ sudo yum clean metadata
$ sudo yum install php php-{pear,cgi,common,curl,mbstring,gd,mysqlnd,gettext,bcmath,json,xml,fpm,intl,zip,imap}
Accept PHP 7 packages to be installed on AWS EC2.
Dependencies Resolved
========================================================================================================================================================
Package Arch Version Repository Size
========================================================================================================================================================
Installing:
php x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 3.2 M
php-bcmath x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 68 k
php-cli x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 4.9 M
php-common x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 1.1 M
php-fpm x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 1.7 M
php-gd x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 180 k
php-intl x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 221 k
php-json x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 70 k
php-mbstring x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 511 k
php-mysqlnd x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 238 k
php-pear noarch 1:1.10.7-3.amzn2.0.1 amzn2-core 354 k
php-xml x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 198 k
Installing for dependencies:
apr x86_64 1.6.3-5.amzn2.0.2 amzn2-core 118 k
apr-util x86_64 1.6.1-5.amzn2.0.2 amzn2-core 99 k
apr-util-bdb x86_64 1.6.1-5.amzn2.0.2 amzn2-core 19 k
generic-logos-httpd noarch 18.0.0-4.amzn2 amzn2-core 19 k
httpd x86_64 2.4.43-1.amzn2 amzn2-core 1.3 M
httpd-filesystem noarch 2.4.43-1.amzn2 amzn2-core 23 k
httpd-tools x86_64 2.4.43-1.amzn2 amzn2-core 87 k
libxslt x86_64 1.1.28-5.amzn2.0.2 amzn2-core 243 k
libzip x86_64 1.3.2-1.amzn2.0.1 amzn2-core 62 k
mailcap noarch 2.1.41-2.amzn2 amzn2-core 31 k
mod_http2 x86_64 1.15.3-2.amzn2 amzn2-core 146 k
oniguruma x86_64 5.9.6-1.amzn2.0.3 amzn2-core 127 k
php-pdo x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 133 k
php-process x86_64 7.4.5-1.amzn2 amzn2extra-php7.4 88 k
Transaction Summary
========================================================================================================================================================
Install 12 Packages (+14 Dependent packages)
Total download size: 15 M
Installed size: 61 M
Is this ok [y/d/N]: y
Check the default PHP Version
$ php -v
PHP 7.4.15 (cli) (built: Feb 11 2021 17:53:39) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
To install PHP 7.2, disable 7.4 and 7.3 and enable 7.2.
$ sudo amazon-linux-extras disable php7.4
$ sudo amazon-linux-extras disable php7.3
$ sudo amazon-linux-extras enable php7.2
$ sudo yum install php php-{pear,cgi,common,curl,mbstring,gd,mysqlnd,gettext,bcmath,json,xml,fpm,intl,zip,imap}
$ php -v
PHP 7.2.31 (cli) (built: Jul 2 2020 23:17:00) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
Installing PHP 7.3 on Amazon AWS EC2, similar commands can be used.
Learn More: How To Use A Simple Bash Script To Backup MySQL Database
Conclusion:
PHP has now been installed in our EC2 instance. Please ask anything in the comment section if you have any questions.
Bilal Shafqat
Related posts
New Articles
Top 7 Tools for Remote Sales
No matter the fact it has never been easier to travel to any point of the world to have a…