[HOWTO]Joomla

9. Juni 2009


 

Einer unserer Kunden wollte als CMS unbedingt Joomla haben. Nun hat Joomla nicht unbedingt den besten Ruf im Bereich Sicherheit, also musste fastCGI her.
Im Grunde ist die Umsetzung auch recht einfach. Unter Debian müssen nur folgende Pakete zusätzlich zu Apache2 und PHP5 installiert werden: „php-xml-parser, php5-xcache, apache2-suexec, libapache2-mod-fastcgi, libapache2-mod-fcgid, php5-cgi, apache2-mpm-prefork“
Als nächstes müssen wir die php.ini unter /etc/php5/cgi/php.ini noch ein wenig anpassen. Zum einen wird mit open_basedir der Zugriff auf das Verzeichnis wo Joomla installiert werden soll begrenzt, zB /var/www/joomla. Anschließend kann man noch den safe_mode aktivieren und mit disable_functions = system, passthru, phpinfo, show_source,exec, shell_exec, popen, proc_open gesetzt einige Funktionen von PHP deaktivieren.

In der Directory Directive des zu benutzenden Verzeichnisses muss folgender Inhalf eingefügt bzw geändert werden:
FCGIWrapper In der Directory Directive des zu benutzenden Verzeichnisses:


   FCGIWrapper /var/www/fcgi_php .php
   AddHandler fcgid-script .php
   Options Indexes FollowSymLinks MultiViews ExecCGI

/var/www/fcgi_php .php sieht wie folgt aus:


#!/bin/sh
export PHPRC="/etc/php5/cgi"
export PHP_FCGI_CHILDREN=2
export PHP_FCGI_MAX_REQUESTS=500
exec /usr/bin/php5-cgi

Der Eigentümer der PHP Dateien muss ein User mit einer UID <1000 sein.