Php upgrades on SLES 12

I am running some SLES 12 servers that I have upgraded to SP5. I thought PHP would be getting upgraded along with the service pack, but it appears not to be. The server still lists PHP 7.0.7.

I think I should be on 7.4 according to these two links:

What did I miss? I would appreciate it if someone would point me to the docs for getting PHP upgraded since I don’t seem to find it. I typically use zypper.

You’re sure you have activated the Web and Scripting Module?

What does ‘SUSEConnect --list-extensions’ show you?

Web and Scripting Module 12 x86_64 (Activated)

Strange. I’m showing 7.4.x installed on my 12 SP 5 systems. zypper info php74-devel for example;

Information for package php74-devel:

Repository : SLE-SDK12-SP5-Updates
Name : php74-devel
Version : 7.4.6-1.33.1
Arch : x86_64
Vendor : SUSE LLC
Support Level : unknown
Installed Size : 5.1 MiB
Installed : No
Status : not installed
Source package : php74-7.4.6-1.33.1.src
Summary : PHP7 development files for C/C++ extensions

What have you tried? If you clear the zypper cache and refresh, what does ‘zypper up’ and ‘zypper dup’ offer you?

If I ask for 74, I will get 74;

zypper in php74*
Refreshing service ‘Containers_Module_12_x86_64’.
Refreshing service ‘SUSE_Linux_Enterprise_Server_12_SP5_x86_64’.
Refreshing service ‘SUSE_Linux_Enterprise_Software_Development_Kit_12_SP5_x86_64’.
Refreshing service ‘Web_and_Scripting_Module_12_x86_64’.
Loading repository data…
Reading installed packages…
Resolving package dependencies…

The following 82 NEW packages are going to be installed:
gcc gcc-c++ gcc48 gcc48-c++ libasan0 libatomic1 libgomp1 libitm1 liblmdb-0_9_11 libmemcached11 libonig2 libpcre2-16-0 libpcre2-32-0 libpcre2-8-0 libpcre2-posix2 libpq5 libsodium23 libtidy-0_99-0 libtsan0
libxml2-devel libzip2 ncurses-devel pcre2-devel php74 php74-APCu php74-bcmath php74-bz2 php74-calendar php74-ctype php74-curl php74-dba php74-devel php74-dom php74-enchant php74-exif php74-fastcgi php74-fileinfo
php74-fpm php74-ftp php74-gd php74-gettext php74-gmp php74-iconv php74-intl php74-json php74-ldap php74-mbstring php74-memcached php74-mysql php74-odbc php74-opcache php74-openssl php74-pcntl php74-pdo php74-pear
php74-pecl php74-pgsql php74-phar php74-posix php74-readline php74-redis php74-shmop php74-snmp php74-soap php74-sockets php74-sodium php74-sqlite php74-sysvmsg php74-sysvsem php74-sysvshm php74-tidy
php74-tokenizer php74-xmlreader php74-xmlrpc php74-xmlwriter php74-xsl php74-zip php74-zlib readline-devel tack unixODBC xz-devel

The following 9 recommended packages were automatically selected:
php74-ctype php74-dom php74-iconv php74-json php74-openssl php74-sqlite php74-tokenizer php74-xmlreader php74-xmlwriter

The following 9 packages have no support information from their vendor:
libsodium23 libtidy-0_99-0 libxml2-devel pcre2-devel php74-APCu php74-devel php74-redis readline-devel xz-devel

82 new packages to install.
Overall download size: 31.4 MiB. Already cached: 0 B. After the operation, additional 130.2 MiB will be used.
Continue? [y/n/…? shows all options] (y):

1 Like

Maybe I am misunderstanding the docs. From the way it reads, I assumed that applying SP5 should’ve automatically included the latest PHP version. But you mention “zypper in php74*”…does moving to PHP 7.4 require this separate step?

You can easily force the upgrade to 7.4, however, the reason it’s not ‘automatic’ is that if you have it already installed, SUSE does not know if your application(s) supports the latest version. That’s why the readme tells you to review breaking changes, issues, etc. Are you at 7.2 or 7.3 now? What applications are you running via PHP? Do the applications support 7.3/7.4/etc?

[PHP: PHP 7.4.0 Release Announcement](PHP 7.4 Potential Breaking Changes)

1 Like

I’m just hosting some simple websites (internal) with some basic php scripts. My SLES 12 server is still running PHP 7.0.7. I installed 7.4, but running into issues getting it functioning. I may just stand up a new SLES 15 server and migrate my websites to it. Might be less trouble than trying to get php7.4 functioning on SLES 12. But thanks for the help!