DevHeads.net

PHP 7.x on CentOS 7 : which solution ?

Hi,

As you all know, CentOS 7 is shipping PHP 5.4, which is OK in some
situations. Unfortunately, some applications like OwnCloud require a
more recent version of PHP.

Up until recently, I've been using PHP 5.6 packages from the Webtatic
repository. Despite the bad press this third party repo seems to have,
it has been working perfectly for me for a few years. Here's the PHP 5.6
packages I have on an OwnCloud server:

$ rpm -qa | grep php
php56w-devel-5.6.40-1.w7.x86_64
php56w-pdo-5.6.40-1.w7.x86_64
php56w-gd-5.6.40-1.w7.x86_64
php56w-mysql-5.6.40-1.w7.x86_64
php56w-process-5.6.40-1.w7.x86_64
php56w-pear-1.10.4-1.w7.noarch
php56w-common-5.6.40-1.w7.x86_64
php56w-xml-5.6.40-1.w7.x86_64
php56w-pecl-redis-3.1.6-1.w7.x86_64
php56w-cli-5.6.40-1.w7.x86_64
php56w-mcrypt-5.6.40-1.w7.x86_64
php56w-mbstring-5.6.40-1.w7.x86_64
php56w-pecl-igbinary-2.0.5-1.w7.x86_64
php56w-pecl-apcu-4.0.11-2.w7.x86_64
php56w-intl-5.6.40-1.w7.x86_64
php56w-5.6.40-1.w7.x86_64
php56w-soap-5.6.40-1.w7.x86_64

Now I'll have to upgrade these to some version of PHP 7. So I googled
"php 7 centos 7" and found quite a wealth of - sometimes contradictory -
information.

1. The "recommended" way of doing things seems to be the Red Hat
Software Collections. Correct me if I'm wrong. I wonder if this way of
doing things will enable me to get all the PHP modules listed above.

2. The use of Webtatic seems to be frowned upon. I still have to figure
out why, since this repository has always worked perfectly for me.

3. Then there's another repository managed by Remi Collet. Any thoughts
on that?

And then there's also the question : which version of PHP 7 should I
choose ? On my servers, I'm mainly hosting WordPress, Dolibarr and
OwnCloud.

Any suggestions ? I'm no lamer for doing a bit of RTFM, so a pointer to
documentation will do. The problem is not so much that there is no
information on the subject. It's rather : there's too much. As we say in
France : I'm confused about which saint to send my prayers to. :o)

Cheers,

Niki

Comments

Re: PHP 7.x on CentOS 7 : which solution ?

By Michael Schumacher at 03/15/2019 - 04:29

Hi,

NK> As you all know, CentOS 7 is shipping PHP 5.4, which is OK in some
NK> situations. Unfortunately, some applications like OwnCloud require a
NK> more recent version of PHP.

I had the same problem a few weeks ago and decided to stick with the
webtatic repository. As our typo3 instance required 7.0, I updated
from php.5.6 to php.7.0 by simply "yum remove php56w ..." and "yum
install php70w ...". Everything went smooth and without problem.
Before I updated, I checked if all used 5.6 packages were available in
the 7.0 version.

I took that path because I could easily identify that all required
packages were available in both versions. This might be more
complicated if I would have moved from webtatic-5.6 to remy-7.0.

You may also consider to crossgrade from owncloud to nextcloud :-)

best regards

Re: PHP 7.x on CentOS 7 : which solution ?

By Rob Kampen at 03/15/2019 - 04:29

On 15/03/19 8:51 PM, Nicolas Kovacs wrote:
Hi Niki,

I have been using the Remi Collet versions 7.0, 7.1 and 7.2 on a few
servers that need later php versions. They seem to work as advertised,
they have many supporting php libraries - not sure if they include all
the ones you specify.

Currently using their 7.2.15 with no issues on CentOS 7.6 with selinux
enabled and enforcing.

I use codeigniter v 3.1.10 and bonfire v 0.84 (my own updated version to
use the latest codeigniter) plus a few other related systems: bootstrap
4.2.1, jquery 3.3.1 for my web development with this php version.

php 7.3 is bleeding edge in my view - only released 12/2018 so I'll wait
a bit before going there as production needs some stability.

HTH
Rob

Re: PHP 7.x on CentOS 7 : which solution ?

By Alice Wonder at 03/15/2019 - 04:00

On 3/15/19 12:51 AM, Nicolas Kovacs wrote:
I package PHP 7.3.x linked against LibreSSL rather than OpenSSL.

I also package MariaDB 10.2.x and updated Apache.

Right now there is a yum install issue - you have to manually remove the
mariadb libs from 5.x to install. The dependencies are met, yum just
can't figure it out.

<a href="https://lirelamp.com/" title="https://lirelamp.com/">https://lirelamp.com/</a>

Some of my documentation is a bit out of date, but no one is paying me,
so...

I do things differently than "software collections" - my philosophy is
to just replace the system provided versions rather than put them in /opt.

I have that philosophy because I prefer to set up a VPS for a purpose
and if that purpose is a LAMP stack I don't see the point of keeping the
crusty MariaDB / PHP in place so I just replace them with modern
versions which largely are modified when needed Fedora spec files.

With the exception that I build against LibreSSL instead of against OpenSSL.