-
-
Save stayallive/92e841e7dd89c8509c15 to your computer and use it in GitHub Desktop.
#!/bin/bash | |
# Make sure you are up to date | |
yum -y update && yum -y install wget | |
# Install EPEL repository | |
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm | |
# Get us a clean working directory | |
mkdir /php | |
cd /php | |
# Install PHP dependencies | |
yum -y install gcc make gcc-c++ cpp kernel-headers.x86_64 libxml2-devel openssl-devel \ | |
bzip2-devel libjpeg-devel libpng-devel freetype-devel openldap-devel postgresql-devel \ | |
aspell-devel net-snmp-devel libxslt-devel libc-client-devel libicu-devel gmp-devel curl-devel \ | |
libmcrypt-devel unixODBC-devel pcre-devel sqlite-devel db4-devel enchant-devel libXpm-devel \ | |
mysql-devel readline-devel libedit-devel recode-devel libtidy-devel libtool-ltdl-devel | |
# Download PHP | |
wget http://nl1.php.net/get/php-5.5.23.tar.gz/from/this/mirror -O /php/php-5.5.23.tar.gz | |
# Extract PHP | |
tar xzvf /php/php-5.5.23.tar.gz | |
# Move to unpacked folder | |
cd /php/php-5.5.23 | |
# Configure PHP build script | |
./configure \ | |
--with-libdir=lib64 \ | |
--cache-file=./config.cache \ | |
--prefix=/php/php-5.5.23 \ | |
--with-config-file-path=/php/php-5.5.23/etc \ | |
--disable-debug \ | |
--with-pic \ | |
--disable-rpath \ | |
--with-bz2 \ | |
--with-curl \ | |
--with-freetype-dir=/php/php-5.5.23 \ | |
--with-png-dir=/php/php-5.5.23 \ | |
--enable-gd-native-ttf \ | |
--without-gdbm \ | |
--with-gettext \ | |
--with-gmp \ | |
--with-iconv \ | |
--with-jpeg-dir=/php/php-5.5.23 \ | |
--with-openssl \ | |
--with-pspell \ | |
--with-pcre-regex \ | |
--with-zlib \ | |
--enable-exif \ | |
--enable-ftp \ | |
--enable-sockets \ | |
--enable-sysvsem \ | |
--enable-sysvshm \ | |
--enable-sysvmsg \ | |
--enable-wddx \ | |
--with-kerberos \ | |
--with-unixODBC=/usr \ | |
--enable-shmop \ | |
--enable-calendar \ | |
--with-libxml-dir=/php/php-5.5.23 \ | |
--enable-pcntl \ | |
--with-imap \ | |
--with-imap-ssl \ | |
--enable-mbstring \ | |
--enable-mbregex \ | |
--with-gd \ | |
--enable-bcmath \ | |
--with-xmlrpc \ | |
--with-ldap \ | |
--with-ldap-sasl \ | |
--with-mysql=/usr \ | |
--with-mysqli \ | |
--with-snmp \ | |
--enable-soap \ | |
--with-xsl \ | |
--enable-xmlreader \ | |
--enable-xmlwriter \ | |
--enable-pdo \ | |
--with-pdo-mysql \ | |
--with-pear=/php/php-5.5.23/pear \ | |
--with-mcrypt \ | |
--without-pdo-sqlite \ | |
--with-config-file-scan-dir=/php/php-5.5.23/php.d \ | |
--without-sqlite3 \ | |
--enable-intl \ | |
--enable-opcache | |
# Build & Install | |
make && make install | |
# Create a default php.ini | |
mkdir /php/php-5.5.23/etc | |
cp -a /etc/php.ini /php/php-5.5.23/etc/php.ini | |
# Set the timezone | |
timezone=$(grep -oP '(?<=")\w+/\w+' /etc/sysconfig/clock) | |
sed -i "s#;date.timezone =#date.timezone = $timezone#" /php/php-5.5.23/etc/php.ini | |
# Register with Plesk | |
/usr/local/psa/bin/php_handler \ | |
--add \ | |
-displayname "5.5.23" \ | |
-path /php/php-5.5.23/bin/php-cgi \ | |
-phpini /php/php-5.5.23/etc/php.ini \ | |
-type fastcgi \ | |
-id "fastcgi-5.5.23" |
@md-frg are you sure the installation was completed? maybe you've got some compilation error, also make sure all the paths in the script are correct in case you've changed them
I am getting the following error, any hints? Thanks.
[2015-02-28 03:10:32] ERR [util_exec] proc_close() failed
Unable to register the PHP handler: Binary /php/php-5.5.20/bin/php-cgi doesn't exists
No errors but it still has php 5.4 en not 5.5....... Why?
@bartproductions
You still have to enable it for a website. You can do this in Websites > Hosting Settings for a specific website.
This procedure just compiles and installs the custom handler.
and how to register for Apache module?
Hero! Worked perfectly
Thanks for this, I've installed this but can't seem to enable opcache.
Hello,
I am getting error that PHP handler can not be registered, because of missing Directory /php/php-5.5.20/bin/php-cgi