In this post we will install php 5.4 on CentOS 6 with yum command . In available default repo of CentOS, we will get the php 5.3 version. Some PHP developers uses the PHP 5.4 version for application, hence we need PHP 5.4 to be installed on CentOS 6.x .

It is known that in CentOS 6 series versions, we can not get the PHP 5.4 version from default yum repo .

To install php 5.4 on CentOS 6.x, we will use the SCL repo. In terms of SoftwareCollections.org (SCL), “Software Collections give you the power to build, install, and use multiple versions of software on the same system, without affecting system-wide installed packages.”

Lets start the installation of PHP 5.4 .

Step 1. Install SCL repo only by hitting below given command.

yum install centos-release-SCL

Step 2. Install php 5.4 version on system now.

yum install php54

To install specific package, package name should be known. Hence, to get the list of available package list from SCL repo run below given command.

yum list|grep php

Step 3. Activate the PHP 5.4 on system.
NOTE: If you run below given command directly from terminal then on next login you will not find PHP 5.4 path.

source /opt/rh/php54/enable

Basically the above command, make PHP 5.4 executable path and environment available to current login user.

To make PHP 5.4 available to all user , we have to add line source /opt/rh/php54/enable inside file called /etc/profile. Now activate without logout by running command.

source /etc/profile

Or in case, if you only want php 5.4 available to specific user then just only edit .bashrc or .bash_profile file from User’s home directory. And add line source /opt/rh/php54/enable .

Step 4. Now check the php version

php -v

Below given is reference from our system.

[root@localhost ~]# php -v
PHP 5.4.16 (cli) (built: Nov 19 2014 08:05:17) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
[root@localhost ~]# 

IMPORTANT NOTE : The PHP 5.4 package actually installed in /opt/rh directory.

Read Some More Articles

4 Comments

  1. First install the SCL repo:

    yum install centos-release-SCL
    Then install PHP 5.4 and these modules:

    yum install php54 php54-php php54-php-gd php54-php-mbstring
    You must also install the updated database module. This installs the new PHP 5.4 module for MySQL/MariaDB:

    yum install php54-php-mysqlnd
    Activate the new PHP version permanently:

    source /opt/rh/php54/enable
    Disable loading the old PHP 5.3 Apache module:

    mv /etc/httpd/conf.d/php.conf /etc/httpd/conf.d/php.conf.old
    You should now have a /etc/httpd/conf.d/php54-php.conf file, which loads the correct PHP 5.4 module for Apache.

    Finally, restart Apache:

    service httpd restart

    1. Fantastic step-by-step instructions. Just follow (carefully) and you are done within a minute or so!
      Thank you

  2. Important note: To install PHP modules you need to use php54-php-(modulename). I was trying to install PDO with yum install php54-pdo but the actual command you need is yum install php54-php-pdo

    There also doesn’t seem to be a module for mcrypt or mssql at all.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.