Server-Konfiguration · 4 min read · Dec 12, 2025
Der perfekte Server - Fedora 14 x86_64 [ISPConfig 2] - Seite 5
11 Apache2 Mit PHP, Ruby, Python, WebDAV
Jetzt installieren wir Apache mit PHP5 (das ist PHP 5.3.3):
yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-eaccelerator php-magickwand php-magpierss php-mapserver php-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-develDann bearbeiten Sie /etc/httpd/conf/httpd.conf:
vi /etc/httpd/conf/httpd.confund ändern Sie DirectoryIndex zu
| [...] DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl [...] |
Jetzt konfigurieren Sie Ihr System, um Apache beim Booten zu starten:
chkconfig --levels 235 httpd onStarten Sie Apache:
/etc/init.d/httpd start11.1 PHP Global Deaktivieren
(Wenn Sie nicht planen, ISPConfig auf diesem Server zu installieren, überspringen Sie bitte diesen Abschnitt!)
In ISPConfig konfigurieren Sie PHP auf Website-Basis, d.h. Sie können angeben, welche Website PHP-Skripte ausführen kann und welche nicht. Dies kann nur funktionieren, wenn PHP global deaktiviert ist, da sonst alle Websites PHP-Skripte ausführen könnten, unabhängig davon, was Sie in ISPConfig angeben.
Um PHP global zu deaktivieren, bearbeiten wir /etc/httpd/conf.d/php.conf und kommentieren die AddHandler- und AddType-Zeilen aus:
vi /etc/httpd/conf.d/php.conf| # # PHP ist eine in HTML eingebettete Skriptsprache, die es Entwicklern # erleichtern soll, dynamisch generierte Webseiten zu schreiben. # |
Danach starten wir Apache neu:
/etc/init.d/httpd restart11.2 Ruby
Seit Version 2.2.20 hat ISPConfig integrierte Unterstützung für Ruby. Anstelle von CGI/FastCGI ist ISPConfig darauf angewiesen, dass mod_ruby auf dem Apache des Servers verfügbar ist.
Für Fedora 14 gibt es kein mod_ruby-Paket, also müssen wir es selbst kompilieren. Zuerst installieren wir einige Voraussetzungen:
yum install httpd-devel ruby ruby-develAls nächstes laden wir mod_ruby wie folgt herunter und installieren es:
cd /tmp
wget http://modruby.net/archive/mod_ruby-1.3.0.tar.gz
tar zxvf mod_ruby-1.3.0.tar.gz
cd mod_ruby-1.3.0/
./configure.rb –with-apr-includes=/usr/include/apr-1
make
make install
Schließlich müssen wir das mod_ruby-Modul zur Apache-Konfiguration hinzufügen, also erstellen wir die Datei /etc/httpd/conf.d/ruby.conf…
vi /etc/httpd/conf.d/ruby.conf| LoadModule ruby_module modules/mod_ruby.so |
… und starten Sie Apache neu:
/etc/init.d/httpd restartWeitere Details zu mod_ruby finden Sie in diesem Artikel.
11.3 mod_python installieren
Um mod_python zu installieren, führen wir einfach aus…
yum install mod_python… und starten Sie Apache danach neu:
/etc/init.d/httpd restart11.4 WebDAV
WebDAV sollte bereits aktiviert sein, aber um dies zu überprüfen, öffnen Sie /etc/httpd/conf/httpd.conf und stellen Sie sicher, dass die folgenden drei Module aktiv sind:
vi /etc/httpd/conf/httpd.conf| [...] LoadModule auth_digest_module modules/mod_auth_digest.so [...] LoadModule dav_module modules/mod_dav.so [...] LoadModule dav_fs_module modules/mod_dav_fs.so [...] |
Wenn Sie /etc/httpd/conf/httpd.conf ändern müssen, vergessen Sie nicht, Apache danach neu zu starten:
/etc/init.d/httpd restart 12 ProFTPd
ISPConfig hat eine bessere Unterstützung für proftpd als für vsftpd, also lassen Sie uns vsftpd entfernen und proftpd installieren:
yum remove vsftpdyum install proftpdJetzt können wir die Systemstartlinks für Proftpd erstellen und es starten:
chkconfig –levels 235 proftpd on
/etc/init.d/proftpd start
13 Webalizer
Um webalizer zu installieren, führen Sie einfach aus
yum install webalizer14 Systemuhr synchronisieren
Wenn Sie möchten, dass die Systemuhr mit einem NTP-Server synchronisiert wird, tun Sie Folgendes:
yum install ntpchkconfig –levels 235 ntpd on
tpdate 0.pool.ntp.org
/etc/init.d/ntpd start
15 Einige Perl-Module installieren
ISPConfig kommt mit SpamAssassin, das einige Perl-Module benötigt, um zu funktionieren. Wir installieren die erforderlichen Perl-Module mit einem einzigen Befehl:
yum install perl-HTML-Parser perl-DBI perl-Net-DNS perl-Digest-SHA1 perl-ExtUtils-AutoInstall perl-NetAddr-IP perl-Archive-Tar16 ISPConfig
Die Konfiguration des Servers ist jetzt abgeschlossen. Sie können nun ISPConfig darauf installieren, indem Sie diese Anweisungen befolgen: http://www.ispconfig.org/manual_installation.htm
Bevor Sie ISPConfig installieren, gibt es eine wichtige Sache, die Sie tun müssen. Öffnen Sie /usr/include/stdio.h und ersetzen Sie getline durch parseline in Zeile 673:
vim /usr/include/stdio.h| [...] /* Wie `getdelim', aber liest bis zu einer neuen Zeile. Diese Funktion ist kein Teil von POSIX und daher kein offizieller Abbruchpunkt. Aber aufgrund der Ähnlichkeit mit einer POSIX-Schnittstelle oder aufgrund der Implementierung ist es ein Abbruchpunkt und daher nicht mit __THROW markiert. */ extern _IO_ssize_t parseline (char **__restrict __lineptr, size_t *__restrict __n, FILE *__restrict __stream) __wur; #endif [...] |
Wenn Sie dies nicht tun, schlägt die Installation aufgrund des folgenden Fehlers fehl:
htpasswd.c:101: Fehler: widersprüchliche Typen für âgetlineâ
/usr/include/stdio.h:653: Hinweis: vorherige Deklaration von âgetlineâ war hier
make[2]: [htpasswd.o] Fehler 1
make[2]: Verlasse das Verzeichnis `/home/install_ispconfig/compile_aps/apache_1.3.41/src/support’
make[1]: [build-support] Fehler 1
make[1]: Verlasse das Verzeichnis `/home/install_ispconfig/compile_aps/apache_1.3.41’
make: * [build] Fehler 2
FEHLER: Konnte Apache nicht erstellen
Sie können die Änderung an /usr/include/stdio.h nach der erfolgreichen ISPConfig-Installation rückgängig machen (aber vergessen Sie nicht, sie zurückzuändern, wann immer Sie ISPConfig aktualisieren möchten!).
16.1 Eine Anmerkung zu SuExec
Wenn Sie CGI-Skripte unter suExec ausführen möchten, sollten Sie /var/www als Webstamm für von ISPConfig erstellte Websites angeben, da Fedoras suExec mit /var/www als Doc_Root kompiliert ist. Führen Sie aus
/usr/sbin/suexec -Vund die Ausgabe sollte so aussehen:
[root@server1 ~]# /usr/sbin/suexec -V
-D AP_DOC_ROOT=”/var/www”
-D AP_GID_MIN=100
-D AP_HTTPD_USER=”apache”
-D AP_LOG_EXEC=”/var/log/httpd/suexec.log”
-D AP_SAFE_PATH=”/usr/local/bin:/usr/bin:/bin”
-D AP_UID_MIN=500
-D AP_USERDIR_SUFFIX=”public_html”
[root@server1 ~]#
Wenn Sie also suExec mit ISPConfig verwenden möchten, ändern Sie den Standard-Webstamm (der /var/www ist) nicht, wenn Sie den Expertenmodus während der ISPConfig-Installation verwenden (im Standardmodus können Sie den Webstamm ohnehin nicht ändern, sodass Sie in jedem Fall suExec verwenden können).
17 Links
- Fedora: http://fedoraproject.org/
- ISPConfig: http://www.ispconfig.org/
Erhalte neue Beiträge in deinem Posteingang.
Kein Spam. Jederzeit abmelden.