Über den Author / Internet / Server / Confixx / Confixx auf PHP 5.3 umstellen / Vhosts auf PHP 5.4

Confixx auf PHP 5.3 umstellen / Vhosts auf PHP 5.4

~3 Min. Lesezeit

Es gibt viele Ansätze. Einer davon war auch von mir Confixx auf PHP 5.4 zu portieren.

Leider aber ist der Quellcode und auch diverse Perlskripte sehr mühsam zu durchsuchen und abschliessend hat es keiner geschafft ohne Probleme confixx unter PHP 5.4 zum laufen zu bekommen.

Daher habe ich mich kurzerhand umentschieden Confixx auf PHP 5.3 weiterhin laufen zu lassen.

Dies geht mit wenig Aufwand relativ einfach.
Diese Anleitung bezieht sich auf ein 64Bit System!

Bevor wie jedoch mit PHP 5.3 beginnen… Der Cronjob von Confixx hat dennoch weiterhin ein Problem mit dem neuen Perl, dieses zu beheeben, updated man diverse Dinge:

cd /opt/confixx/admin/CPAN
wget https://www.ghcif.de/~t4c/confixx/Updater-1.0.11.tgz
tar xvfz Updater-1.0.11.tgz
cd Updater-1.0.11
perl Makefile.PL
make
make install
mkdir -p /usr/local/lib/perl/5.14.2
cp -R /usr/local/lib/perl/5.10.1/* /usr/local/lib/perl/5.14.2/
cpanp -i DBI

Zuerst installieren wir die nötigen Packete:

apt-get install libapache2-mod-fcgid apache2-suexec-custom \
libpcre3-dev libpcre++-dev libpng12-dev libbz2-dev libcurl4-openssl-dev \
libc-client2007e-dev libjpeg-dev libgif-dev libgif4 libpthread-stubs0 \
ibpthread-stubs0-dev libx11-dev libxau-dev libxcb1-dev libxdmcp-dev libxpm-dev \
x11proto-core-dev x11proto-input-dev x11proto-kb-dev xtrans-dev libxml2-dev \
libmysqlclient-dev libfreetype6-dev

Nun laden wir PHP5.3 runter und installieren dieses:

cd /opt
wget "http://de.php.net/get/php-5.3.25.tar.bz2/from/this/mirror" -O php53.tar.bz2
tar xjf php53.tar.bz2
cd php-5.3.25
ln -s /usr/lib/libc-client.a /usr/lib/x86_64-linux-gnu/libc-client.a
./configure --prefix=/usr/share/php53 --datadir=/usr/share/php53 --mandir=/usr/share/man \
--bindir=/usr/bin/php53 --with-libdir=lib/x86_64-linux-gnu --includedir=/usr/include/php53 \
--sysconfdir=/etc/php53/apache2 --with-config-file-path=/etc/php53/apache2 \
-with-config-file-scan-dir=/etc/php53/conf.d --enable-libxml --enable-session \
--with-pcre-regex=/usr --enable-xml --enable-simplexml --enable-filter --disable-debug \
--enable-inline-optimization --disable-rpath --disable-static --enable-shared --with-pic \
--with-gnu-ld --with-mysql --with-gd --with-jpeg-dir --with-png-dir --with-xpm-dir \
--enable-exif --with-zlib --with-bz2 --with-curl --with-ldap --with-mysqli \
--with-freetype-dir --enable-soap --enable-sockets --enable-calendar --enable-ftp \
--enable-mbstring --enable-gd-native-ttf --enable-bcmath --enable-zip --with-pear \
--with-openssl --with-imap --with-imap-ssl --with-kerberos --enable-phar --enable-pdo \
--with-pdo-mysql --with-mysqli
make && make install

Die neuen Module müssen gegebenenfalls aktiviert werden:

a2enmod fcgid
a2enmod suexec
/etc/init.d/apache2 force-reload

Als nächstes Passen wir Confixx an:

chown -R confixx:confixx /var/www/confixx
chown confixx:www-data /var/www/confixx
chmod 755 /var/www/confixx
cd /var/www/confixx
mkdir conf
cd conf
wget http://www.murawski.ch/wp-content/uploads/2013/11/confixx339-php53.txt -O php.ini
cd ..
mkdir php-fcgi
touch php-fcgi/php-fcgi-starter
chown confixx:confixx -R conf php-fcgi
chmod 750 -R php-fcgi
chmod 440 conf/php.ini

echo "#!/bin/sh" > php-fcgi/php-fcgi-starter
echo "PHPRC=/var/www/confixx/conf" >> php-fcgi/php-fcgi-starter
echo "export PHPRC" >> php-fcgi/php-fcgi-starter
echo "export TMPDIR=/var/www/confixx/tmp" >> php-fcgi/php-fcgi-starter
echo "exec /usr/bin/php53/php-cgi" >> php-fcgi/php-fcgi-starter

chattr +i php-fcgi/php-fcgi-starter
chattr +i conf/php.ini

Anschliessend müsst ihr MANUELL die confixx_mhost.conf bearbeiten. Wichtig ist hier, sobald ihr den Cronjob von Confixx erzwingt wird diese Datei überschrieben.
Ihr sucht nun euren ServerName EURE.CONFIXX.DOMAIN Block.
Dieser Block ersetzt ihr mit diesem Block, wo ihr die Domain an eure anpasst:

<VirtualHost 80.74.158.46:80>
  ServerName EURE.CONFIXX.DOMAIN
  SuexecUserGroup confixx confixx
  php_admin_flag engine off
  AddHandler fcgid-script .php
  
  <FilesMatch \.php$>
    SetHandler fcgid-script
  </FilesMatch>

  DocumentRoot "/var/www/confixx/html"
  DirectoryIndex index.htm index.html index.php
  <Directory />
    Options FollowSymLinks
    AllowOverride None
  </Directory>
  <Directory "/var/www/confixx/html">
   Options Indexes MultiViews FollowSymLinks +ExecCGI
   FCGIWrapper /var/www/confixx/php-fcgi/php-fcgi-starter .php
   Order allow,deny
   allow from all
  </Directory>
  ErrorLog /var/log/apache2/fcgi_errors.log
  LogLevel warn
  CustomLog /var/log/apache2/fcgi_access.log combined
  ServerSignature On
</VirtualHost>

Nach einem erneuten Neustart, sollte euer Confixx auf PHP 5.3 laufen:

a2enmod fcgid
a2enmod suexec
/etc/init.d/apache2 force-reload

Sollte etwas nicht so tun wie vorgesehen, konsultiert die foldgenden Logdateien:

/var/log/apache2/suexec.log
/var/log/apache2/fcgi_errors.log

About Stefan

avatar
Ein männlicher IT Nerd, durchstöbert das Web nach speziellen Gadgets, unentbehrlicher Software und Alles was man im IT Sektor nicht verpassen darf.Immer hilfsbereit wenn Probleme zu lösen sind oder das Unmögliche umgesetzt werden sollte.

Weitere interessante Artikel

PHP Trojaner suchen und finden

~0 Min. LesezeitPHP Trojaner sind seit längerem sehr beliebt. Mit dem Einsatz von immer mehr …

Microsofts Mail-Sperre aufheben

~1 Min. LesezeitMicrosoft bannt im Moment einige IP Bereiche, weil von vereinzelten IP Adressen Spam …

Ein Kommentar

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

eMail-Benachrichtigung bei weiteren Kommentaren.
Auch möglich: Abo ohne Kommentar.