Installation · 4 min read · Nov 21, 2025

Wie man suPHP auf verschiedenen Linux-Distributionen für die Verwendung mit ISPConfig (2.2.20 und höher) installiert

Wie man suPHP auf verschiedenen Linux-Distributionen für die Verwendung mit ISPConfig (2.2.20 und höher)

Version 1.0
Autor: Falko Timme

Ab Version 2.2.20 hat ISPConfig die Unterstützung für suPHP verbessert. Dieser Artikel erklärt, wie man suPHP auf verschiedenen von ISPConfig unterstützten Distributionen installiert. (Wenn Sie suPHP mit früheren ISPConfig-Versionen verwendet haben, wird Ihre Installation weiterhin funktionieren.)

Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

1 Debian Etch / Ubuntu 7.10

Für Debian und Ubuntu gibt es das Paket libapache2-mod-suphp, jedoch besteht das Problem mit diesem Paket darin, dass es die Direktive suPHP_UserGroup (die von ISPConfig verwendet wird) nicht unterstützt, da es nicht mit dem Schalter –with-setid-mode=paranoid kompiliert wurde. Daher müssen wir mod_suphp manuell erstellen.

Zuerst deaktivieren wir das normale PHP5-Modul (als root):

a2dismod php5 /etc/init.d/apache2 restart

Dann installieren wir die Voraussetzungen, die benötigt werden, um mod_suphp zu erstellen:

apt-get install php5-cgi apache2-prefork-dev

Jetzt können wir suPHP wie folgt herunterladen und erstellen:

cd /tmp wget http://www.suphp.org/download/suphp-0.6.2.tar.gz tar xvfz suphp-0.6.2.tar.gz cd suphp-0.6.2 ./configure --prefix=/usr --sysconfdir=/etc --with-apache-user=www-data --with-setid-mode=paranoid --with-apxs=/usr/bin/apxs2 make make install

Schließlich fügen wir das suPHP-Modul zu unserer Apache-Konfiguration hinzu…

vi /etc/apache2/httpd.conf

| LoadModule suphp_module /usr/lib/apache2/modules/mod_suphp.so |

… und starten Apache neu:

/etc/init.d/apache2 restart

2 Fedora 8 / CentOS 5.1

Auf Fedora 8 und CentOS 5.1 müssen wir mod_suphp manuell erstellen, aus den gleichen Gründen wie für Debian und Ubuntu (suPHP_UserGroup).

Zuerst deaktivieren wir das normale PHP5-Modul:

vi /etc/httpd/conf.d/php.conf

Kommentieren Sie die LoadModule-Zeile aus:

| [...] #LoadModule php5_module modules/libphp5.so [...] |

Dann installieren wir die Voraussetzungen, die benötigt werden, um mod_suphp zu erstellen:

yum install php-cli httpd-devel

Jetzt können wir suPHP wie folgt herunterladen und erstellen:

cd /tmp wget http://www.suphp.org/download/suphp-0.6.2.tar.gz tar xvfz suphp-0.6.2.tar.gz cd suphp-0.6.2/ ./configure --prefix=/usr --sysconfdir=/etc --with-apr=/usr/bin/apr-1-config --with-apxs=/usr/sbin/apxs --with-apache-user=apache --with-setid-mode=paranoid --with-php=/usr/bin/php-cgi --with-logfile=/var/log/httpd/suphp_log --enable-SUPHP_USE_USERGROUP=yes make make install

Schließlich fügen wir das suPHP-Modul zu unserer Apache-Konfiguration hinzu…

vi /etc/httpd/conf.d/suphp.conf

| LoadModule suphp_module modules/mod_suphp.so |

… und starten Apache neu:

/etc/init.d/httpd restart

3 Mandriva 2008.0

Auf Mandriva 2008.0 müssen wir mod_suphp manuell erstellen, aus den gleichen Gründen wie für Debian und Ubuntu (suPHP_UserGroup).

Zuerst deaktivieren wir das normale PHP5-Modul:

vi /etc/httpd/modules.d/70_mod_php.conf

Kommentieren Sie die LoadModule-Zeile aus:

| #LoadModule php5_module extramodules/mod_php5.so [...] |

Dann installieren wir die Voraussetzungen, die benötigt werden, um mod_suphp zu erstellen:

urpmi php-cgi apache-devel

Jetzt können wir suPHP wie folgt herunterladen und erstellen:

cd /tmp wget http://www.suphp.org/download/suphp-0.6.2.tar.gz tar xvfz suphp-0.6.2.tar.gz cd suphp-0.6.2/ ./configure --prefix=/usr --sysconfdir=/etc --with-apr=/usr/bin/apr-1-config --with-apxs=/usr/sbin/apxs --with-apache-user=apache --with-setid-mode=paranoid --with-php=/usr/bin/php-cgi --with-logfile=/var/log/httpd/suphp_log --enable-SUPHP_USE_USERGROUP=yes make make install

Schließlich fügen wir das suPHP-Modul zu unserer Apache-Konfiguration hinzu…

vi /etc/httpd/modules.d/A36_mod_suphp.conf

| LoadModule suphp_module modules/mod_suphp.so |

… und starten Apache neu:

/etc/init.d/httpd restart

4 OpenSUSE 10.3

OpenSUSE 10.3 kommt mit einem suPHP-Paket, das die Direktive suPHP_UserGroup versteht, sodass wir es nicht selbst erstellen müssen.

Zuerst deaktivieren wir das normale PHP5-Modul. Öffnen Sie /etc/sysconfig/apache2 und entfernen Sie php5 aus der Zeile APACHE_MODULES (so dass es ähnlich aussieht wie diese Zeile - Ihre Module können abweichen, aber php5 darf nicht mehr aufgeführt sein):

vi /etc/sysconfig/apache2

| [...] APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir rewrite ruby" [...] |

Führen Sie danach aus:

SuSEconfig

Jetzt installieren wir suPHP wie folgt:

yast -i suphp

Als nächstes fügen wir suphp zur APACHE_MODULES-Zeile in /etc/sysconfig/apache2 hinzu, z.B. so:

vi /etc/sysconfig/apache2

| [...] APACHE_MODULES="actions alias auth_basic authn_file authz_host authz_groupfile authz_default authz_user authn_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl suexec userdir rewrite ruby suphp" [...] |

Die suPHP-Pakete von OpenSUSE kommen mit einer suPHP-Konfiguration, die suPHP global aktiviert. Daher müssen wir diese Konfiguration jetzt deaktivieren, damit wir suPHP in ISPConfig pro Website aktivieren oder deaktivieren können:

vi /etc/apache2/conf.d/mod_suphp.conf

In dieser Datei kommentieren wir alles aus:

| # # suPHP_Engine on # # AddType application/x-httpd-php .php # AddType application/x-httpd-php .php3 # AddType application/x-httpd-php .php4 # AddType application/x-httpd-php .php5 # AddHandler application/x-httpd-php .php # # DirectoryIndex index.php index.php3 index.php4 index.php5 # # # suPHP_AddHandler application/x-httpd-php # # # # in Ihrem vhost benötigen Sie: # # suPHP_UserGroup someuser somegroup # |

Schließlich führen wir aus:

SuSEconfig /etc/init.d/apache2 restart

5 Konfigurieren von ISPConfig

Schließlich müssen wir ISPConfig mitteilen, dass es eine suPHP-Konfiguration in die Apache vhosts schreiben soll, anstelle der üblichen PHP-Konfiguration. Dazu öffnen wir die Konfigurationsdatei von ISPConfig /home/admispconfig/ispconfig/lib/config.inc.php und setzen $go_info[“server”][“apache2_php”] auf suphp:

vi /home/admispconfig/ispconfig/lib/config.inc.php

| [...] $go_info["server"]["apache2_php"] = 'suphp'; [...] |

Jetzt, wann immer Sie PHP für eine Website in ISPConfig aktivieren, wird ISPConfig eine suPHP-Konfiguration in die vhost-Konfiguration dieser Website schreiben.

6 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.