Serveur · 5 min read · Dec 12, 2025

Le Serveur Parfait - Fedora 14 x86_64 [ISPConfig 2] - Page 5

11 Apache2 Avec PHP, Ruby, Python, WebDAV

Maintenant, nous installons Apache avec PHP5 (c’est 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-devel

Ensuite, éditez /etc/httpd/conf/httpd.conf :

vi /etc/httpd/conf/httpd.conf

et changez DirectoryIndex à

| [...] DirectoryIndex index.html index.htm index.shtml index.cgi index.php index.php3 index.pl [...] |

Maintenant, configurez votre système pour démarrer Apache au démarrage :

chkconfig --levels 235 httpd on

Démarrez Apache :

/etc/init.d/httpd start

11.1 Désactiver PHP Globalement

(Si vous ne prévoyez pas d’installer ISPConfig sur ce serveur, veuillez sauter cette section !)

Dans ISPConfig, vous configurerez PHP sur une base par site web, c’est-à-dire que vous pouvez spécifier quel site web peut exécuter des scripts PHP et lequel ne le peut pas. Cela ne peut fonctionner que si PHP est désactivé globalement, car sinon tous les sites web pourraient exécuter des scripts PHP, peu importe ce que vous spécifiez dans ISPConfig.

Pour désactiver PHP globalement, nous éditons /etc/httpd/conf.d/php.conf et commentons les lignes AddHandler et AddType :

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

| # # PHP est un langage de script intégré dans HTML qui tente de faciliter # l'écriture de pages web générées dynamiquement pour les développeurs. # LoadModule php5_module modules/libphp5.so LoadModule php5_module modules/libphp5-zts.so # # Fait que l'interpréteur PHP gère les fichiers avec une extension .php. # #AddHandler php5-script .php #AddType text/html .php # # Ajoute index.php à la liste des fichiers qui seront servis comme index # de répertoire. # DirectoryIndex index.php # # Décommentez la ligne suivante pour permettre à PHP d'afficher joliment les fichiers .phps # comme code source PHP : # #AddType application/x-httpd-php-source .phps |

Ensuite, nous redémarrons Apache :

/etc/init.d/httpd restart

11.2 Ruby

À partir de la version 2.2.20, ISPConfig a un support intégré pour Ruby. Au lieu d’utiliser CGI/FastCGI, ISPConfig dépend de la disponibilité de mod_ruby dans l’Apache du serveur.

Pour Fedora 14, il n’y a pas de package mod_ruby disponible, donc nous devons le compiler nous-mêmes. Tout d’abord, nous installons quelques prérequis :

yum install httpd-devel ruby ruby-devel

Ensuite, nous téléchargeons et installons mod_ruby comme suit :

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

Enfin, nous devons ajouter le module mod_ruby à la configuration d’Apache, donc nous créons le fichier /etc/httpd/conf.d/ruby.conf…

vi /etc/httpd/conf.d/ruby.conf

| LoadModule ruby_module modules/mod_ruby.so |

… et redémarrons Apache :

/etc/init.d/httpd restart

Vous pouvez trouver plus de détails sur mod_ruby dans cet article.

11.3 Installer mod_python

Pour installer mod_python, il suffit d’exécuter…

yum install mod_python

… et redémarrez Apache ensuite :

/etc/init.d/httpd restart

11.4 WebDAV

WebDAV devrait déjà être activé, mais pour vérifier cela, ouvrez /etc/httpd/conf/httpd.conf et assurez-vous que les trois modules suivants sont actifs :

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 [...] |

Si vous devez modifier /etc/httpd/conf/httpd.conf, n’oubliez pas de redémarrer Apache ensuite :

/etc/init.d/httpd restart  

12 ProFTPd

ISPConfig a un meilleur support pour proftpd que vsftpd, donc supprimons vsftpd et installons proftpd :

yum remove vsftpd
yum install proftpd

Maintenant, nous pouvons créer les liens de démarrage système pour Proftpd et le démarrer :

chkconfig –levels 235 proftpd on
/etc/init.d/proftpd start

13 Webalizer

Pour installer webalizer, il suffit d’exécuter

yum install webalizer

14 Synchroniser L’Horloge Système

Si vous souhaitez que l’horloge système soit synchronisée avec un serveur NTP, faites ce qui suit :

yum install ntp

chkconfig –levels 235 ntpd on
tpdate 0.pool.ntp.org
/etc/init.d/ntpd start

15 Installer Quelques Modules Perl

ISPConfig est livré avec SpamAssassin qui nécessite quelques modules Perl pour fonctionner. Nous installons les modules Perl requis avec une seule commande :

yum install perl-HTML-Parser perl-DBI perl-Net-DNS perl-Digest-SHA1 perl-ExtUtils-AutoInstall perl-NetAddr-IP perl-Archive-Tar

16 ISPConfig

La configuration du serveur est maintenant terminée. Vous pouvez maintenant installer ISPConfig dessus, en suivant ces instructions : http://www.ispconfig.org/manual_installation.htm

Avant d’installer ISPConfig, il y a une chose importante que vous devez faire. Ouvrez /usr/include/stdio.h et remplacez getline par parseline à la ligne 673 :

vim /usr/include/stdio.h

| [...] /* Comme `getdelim', mais lit jusqu'à une nouvelle ligne. Cette fonction ne fait pas partie de POSIX et donc pas de point d'annulation officiel. Mais en raison de la similarité avec une interface POSIX ou en raison de l'implémentation, c'est un point d'annulation et donc pas marqué avec __THROW. */ extern _IO_ssize_t parseline (char **__restrict __lineptr, size_t *__restrict __n, FILE *__restrict __stream) __wur; #endif [...] |

Si vous ne faites pas cela, l’installation échouera à cause de l’erreur suivante :

htpasswd.c:101: erreur : types conflictuels pour âgetlineâ
/usr/include/stdio.h:653: note : la déclaration précédente de âgetlineâ était ici
make[2]: [htpasswd.o] Erreur 1
make[2]: Leaving directory `/home/install_ispconfig/compile_aps/apache_1.3.41/src/support’
make[1]:
[build-support] Erreur 1
make[1]: Leaving directory `/home/install_ispconfig/compile_aps/apache_1.3.41’
make: * [build] Erreur 2
ERREUR : Impossible de créer Apache

Vous pouvez annuler le changement dans /usr/include/stdio.h après l’installation réussie d’ISPConfig (mais n’oubliez pas de le changer à nouveau chaque fois que vous souhaitez mettre à jour ISPConfig !).

16.1 Une Remarque Sur SuExec

Si vous souhaitez exécuter des scripts CGI sous suExec, vous devez spécifier /var/www comme racine web pour les sites créés par ISPConfig, car le suExec de Fedora est compilé avec /var/www comme Doc_Root. Exécutez

/usr/sbin/suexec -V

et la sortie devrait ressembler à ceci :

[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 ~]#

Donc, si vous souhaitez utiliser suExec avec ISPconfig, ne changez pas la racine web par défaut (qui est /var/www) si vous utilisez le mode expert lors de l’installation d’ISPConfig (en mode standard, vous ne pouvez de toute façon pas changer la racine web, donc vous pourrez utiliser suExec dans tous les cas).

17 Liens

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.