NES for PHP 5 Trial
Install the NES for PHP 5 trial, PHP 5.6.40 without security fixes as packages for Ubuntu and RHEL and as a Windows zip, to test the drop-in replacement before you subscribe.
HeroDevs offers a trial version of NES for PHP 5. Use it to test the drop-in
replacement with your application, extensions and configuration before you
subscribe. The trial is release v5.6.40-nes-5.6.2-trial. It contains the
packages and the Windows zip of NES for PHP 5 release v5.6.40-nes-5.6.2,
for the same platforms, built from PHP 5.6.40 with none of the security
fixes. It is published once and is not updated.
DO NOT use the NES for PHP 5 trial in production. It contains no security fixes: every known vulnerability of PHP 5.6.40 applies to it. It is provided solely for integration evaluation and is not supported.
No HeroDevs access token is required. The trial's files accept any username
and password, and the examples below use HeroDevs and neverendingsupport.
Once installed, php -v shows PHP 5.6.40-nes-trial. PHP_VERSION_ID stays
50640, and extensions built for PHP 5.6 load as before.
Ubuntu
The packages are for Ubuntu 16.04 and Ubuntu 22.04 on x86_64. They keep the
usual names (php5.6-cli, php5.6-fpm, libapache2-mod-php5.6 and the
rest), paths and configuration files, and replace the php5.6 packages a
host already has. Their version is 5.6.40+nes~trial5.6.2-1~ubuntu<release>,
for example 5.6.40+nes~trial5.6.2-1~ubuntu22.04.
Download and verify
In an empty directory, download the signing key, the checksums and the repository for your Ubuntu release:
base=https://registry.nes.herodevs.com/bin/nes/php/v5.6.40-nes-5.6.2-trial
auth="HeroDevs:neverendingsupport"
arch=$(dpkg --print-architecture)
for f in RPM-GPG-KEY-php-nes SHASUMS256.txt SHASUMS256.txt.asc "php-v5.6.40-nes-5.6.2-trial.ubuntu1604.$arch.repo.tar.xz"; do
curl -fSLO -u "$auth" "$base/$f"
done
Then verify the downloads:
gpg --with-fingerprint RPM-GPG-KEY-php-nes # must show CA44E935A3995EB733AF292B18DD1E9212F3C6A2
gpg --import RPM-GPG-KEY-php-nes
gpg --verify SHASUMS256.txt.asc SHASUMS256.txt
ls | awk 'NR == FNR { have[$0]; next } $2 in have' - SHASUMS256.txt | sha256sum -c -
Install
Add the repository, then upgrade the PHP packages the host has:
sudo mkdir -p /opt/nes-php
sudo tar -xJf php-v5.6.40-nes-5.6.2-trial.*.repo.tar.xz -C /opt/nes-php --strip-components=1
sudo cp /opt/nes-php/nes-php.list /etc/apt/sources.list.d/nes-php.list
sudo apt-get update
sudo apt-get upgrade
On a host without PHP, install the packages you need instead, for example
sudo apt-get install php5.6-cli php5.6-fpm php5.6-mysql.
Check the installation:
php -v
Remove the trial
Remove the trial packages, the ones whose version contains nes~trial, and the
repository:
sudo apt-get purge $(dpkg-query -W -f '${db:Status-Abbrev} ${Package} ${Version}\n' | awk '$1 ~ /^i/ && $3 ~ /[.+]nes~trial/ && $2 != "php-common" { print $2 }')
sudo rm /etc/apt/sources.list.d/nes-php.list
sudo rm -rf /opt/nes-php
RHEL
The packages are for RHEL 6 and RHEL 7 on x86_64, and also serve CentOS 6,
Oracle Linux 6, CentOS 7 and Oracle Linux 7. They have the standard names
(php, php-cli, php-fpm, php-mysqlnd and the rest), paths and
configuration files, and replace the PHP 5.6 packages a host already has. Their
release is 0.trial.2.nes.el<RHEL version>, for example
php-cli-5.6.40-0.trial.2.nes.el7.
Download and verify
In an empty directory, download the signing key, the checksums and the repository for your RHEL version:
base=https://registry.nes.herodevs.com/bin/nes/php/v5.6.40-nes-5.6.2-trial
auth="HeroDevs:neverendingsupport"
arch=$(uname -m)
for f in RPM-GPG-KEY-php-nes SHASUMS256.txt SHASUMS256.txt.asc "php-v5.6.40-nes-5.6.2-trial.el6.$arch.repo.tar.xz"; do
curl -fSLO -u "$auth" "$base/$f"
done
Then verify the downloads:
gpg --with-fingerprint RPM-GPG-KEY-php-nes # must show CA44E935A3995EB733AF292B18DD1E9212F3C6A2
gpg --import RPM-GPG-KEY-php-nes
gpg --verify SHASUMS256.txt.asc SHASUMS256.txt
ls | awk 'NR == FNR { have[$0]; next } $2 in have' - SHASUMS256.txt | sha256sum -c -
Install
The packages do not include php-oci8. If the host has it from its previous repository, remove it first (sudo yum remove php-oci8): while one is installed, yum update stops on its dependencies and changes nothing.
Add the repository, then upgrade the PHP packages the host has (tar needs
xz: sudo yum install xz):
sudo mkdir -p /opt/nes-php
sudo tar -xJf php-v5.6.40-nes-5.6.2-trial.*.repo.tar.xz -C /opt/nes-php --strip-components=1
sudo cp /opt/nes-php/nes-php.repo /etc/yum.repos.d/nes-php.repo
sudo yum update 'php*'
On a host without PHP, install the packages you need instead, for example
sudo yum install php-cli php-fpm php-mysqlnd.
The packages are signed with the release signing key's signing subkey. The rpm of RHEL 6 and 7 reads only a key's primary key, so the repository gives yum that subkey as a key of its own, RPM-GPG-KEY-php-nes-subkey. When yum asks to import it, check that its fingerprint is 3A4BDF48590EBCC891C2133CD75FFA42A9EAF7B9.
Check the installation:
php -v
Remove the trial
Remove the trial packages and the repository:
sudo yum remove $(rpm -qa --qf '%{NAME} %{RELEASE}\n' | awk '$2 ~ /\.nes\./ { print $1 }')
sudo rm /etc/yum.repos.d/nes-php.repo
sudo rm -rf /opt/nes-php
To go back to the PHP 5.6 packages you used before, install them again from their repository.
Windows
The zip is the thread-safe (TS) x64 build of PHP 5.6.40 for Windows Server
2016, 2019, 2022 and 2025, made with Visual C++ 2012 (VC11), as NES for PHP 5's
own zip is. It is php-v5.6.40-nes-5.6.2-trial.windows.x64.ts.zip, and its
TRIAL-README.txt says first that it has no security fixes. It runs PHP from
the command line, from IIS through FastCGI and from Apache, and its extension
build is API20131226,TS,VC11.
Prerequisites
The zip needs the two Microsoft runtimes that Windows
lists, which it does not include: the Visual C++ Redistributable for Visual
Studio 2012 Update 4 (x64) and the one for Visual Studio 2015-2026 (x64). To
verify the download, install Gpg4win, which
provides gpg.
Download and verify
In an empty directory, download the signing key, the checksums and the zip:
$base = "https://registry.nes.herodevs.com/bin/nes/php/v5.6.40-nes-5.6.2-trial"
$auth = "HeroDevs:neverendingsupport"
foreach ($f in "RPM-GPG-KEY-php-nes", "SHASUMS256.txt", "SHASUMS256.txt.asc", "php-v5.6.40-nes-5.6.2-trial.windows.x64.ts.zip") {
curl.exe -fSLO -u $auth "$base/$f"
}
Then verify the downloads. gpg --verify must report a good signature, and the
last command must print True:
gpg --show-keys .\RPM-GPG-KEY-php-nes # must show CA44E935A3995EB733AF292B18DD1E9212F3C6A2
gpg --import .\RPM-GPG-KEY-php-nes
gpg --verify .\SHASUMS256.txt.asc .\SHASUMS256.txt
$expected = (Select-String -Path .\SHASUMS256.txt -SimpleMatch "php-v5.6.40-nes-5.6.2-trial.windows.x64.ts.zip").Line.Split(" ")[0]
(Get-FileHash -Algorithm SHA256 .\php-v5.6.40-nes-5.6.2-trial.windows.x64.ts.zip).Hash -eq $expected
Install
Unpack the zip to C:\php and add that folder to the system Path:
Expand-Archive -LiteralPath .\php-v5.6.40-nes-5.6.2-trial.windows.x64.ts.zip -DestinationPath C:\php
[Environment]::SetEnvironmentVariable("Path", [Environment]::GetEnvironmentVariable("Path", "Machine") + ";C:\php", "Machine")
Open a new PowerShell window and check the installation:
php -v
Get-Content C:\php\TRIAL-README.txt -TotalCount 1
The first shows PHP 5.6.40-nes-trial (cli), the second Trial build: no security fixes, not for production. Configure PHP, IIS and Apache as
Windows describes; the trial zip differs from
the PHP 5.6.40 zip you use today in the same ways
(Move from another PHP 5.6 zip).
Remove the trial
Stop the web server or application that uses PHP, remove the C:\php folder
and remove C:\php from the system Path.
How the trial differs from NES for PHP 5
| Trial | NES for PHP 5 | |
|---|---|---|
| Release | v5.6.40-nes-5.6.2-trial, published once | The current release on Installation |
php -v | PHP 5.6.40-nes-trial | PHP 5.6.40-nes |
| Ubuntu packages | 5.6.40+nes~trial5.6.2-1~ubuntu<release> | 5.6.40+nes<release>-1~ubuntu<release> |
| RHEL packages | 5.6.40-0.trial.2.nes.el<RHEL version> | 5.6.40-<release>.nes.el<RHEL version> |
| Windows zip | php-v5.6.40-nes-5.6.2-trial.windows.x64.ts.zip | php-<release>.windows.x64.ts.zip |
| Security fixes | None | Ongoing, listed in the Release Notes |
| Access | Any username and password | HeroDevs access token |
| Support and SLA | None; evaluation only | HeroDevs support and CVE SLA |
| Production use | Not permitted | Yes |
The trial's package versions sort below every NES for PHP 5 release's, so moving a host to a release is a normal upgrade.
Move to the supported product
To subscribe, contact HeroDevs or write to
support@herodevs.com. Once you have an
access token, follow the steps on
Installation with your contact e-mail and token: download the
current release's repository, replace /opt/nes-php with it, and upgrade
(apt-get upgrade, or yum clean metadata then yum update 'php*', as that
page shows for your platform). On Windows, download the current release's zip
and replace the C:\php folder as Windows shows,
keeping your php.ini. Nothing else in your configuration changes.