December 17, 2009

php5+gd+mysql support in plesk

The following are the steps I took to get php5+gd+mysql support (in parallel with the default install of php) working with my Plesk hosted sites on FC2. Hopeful it might help someone else.


mkdir /usr/local/php5libpng
cd /usr/local/php5libpng

wget http://kent.dl.sourceforge.net/sourc...-config.tar.gz
gunzip libpng-1.2.8-config.tar.gz
tar -xvf libpng-1.2.8-config.tar

(remove extra dir’s created by the unzipping)

./configure '--prefix=/usr/local/php5libpng' '--exec-prefix=/usr/local/php5libpng'
make
make install


yum install mysql-devel
yum install libjpeg-devel


mkdir /usr/local/php5
cd /usr/local/php5

wget http://uk2.php.net/get/php-5.1.2.tar...php.net/mirror
gunzip php-5.1.2.tar.gz
tar -xvf php-5.1.2.tar

(remove extra dir’s created by the unzipping)

./configure '--host=i386-redhat-linux' '--build=i386-redhat-linux' '--target=i386-redhat-linux-gnu' '--prefix=/usr/local/php5' '--exec-prefix=/usr/local/php5' '--program-suffix=5' '--enable-force-cgi-redirect' '--enable-discard-path' '--enable-exif' '--enable-ftp' '--with-curl' '--with-bz2' '--enable-memory-limit' '--enable-inline-optimization' '--with-openssl' '--with-png' '--with-regex=system' '--with-xml' '--with-zlib' '--enable-sockets' '--enable-mbstring=shared' '--enable-mbstr-enc-trans' '--with-zlib' '--with-png-dir=/usr/local/php5libpng' '--with-gd' '--with-jpeg-dir=/usr/local/php5libjpeg' '--enable-gd-native-ttf' '--with-mysql'

make
make install


Create the file /home/httpd/vhosts/example.com/conf/vhost.conf with the following in it for each site:

ScriptAlias /php5-cgi-custom /home/httpd/vhosts/example.com/httpdocs
Action application/x-httpd-php5-custom "/php5-cgi-custom/php5"

Run: /usr/local/psa/admin/sbin/websrvmng --reconfigure-vhost --vhost-name=example.com


Create a .htaccess file with the following in the directories that need to be run by php5:

AddType application/x-httpd-php5-custom .php


For each of the sites go to the base httpdocs directory (after ssh’ing in as the site user, not root): /home/httpd/vhosts/example.com/httpdocs/ and run cp /usr/local/php5/bin/php5 ./php5

Then chmod “php5” to 755 (php5 needs to be copied and run locally, since otherwise you get issues with suexec. If you have problems run cat /var/log/httpd/suexec_log and check any errors.


PHP5 should now work.

No comments:

Post a Comment