Configuration PHP

Mémoire

Plus vous activez de modules Drupal, plus il faudra de mémoire disponible pour vos applications PHP. En standard, elle est limitée à 8 Mb, comme mesure minimale de sécurité: par conséquent on ne peut exécuter de programme trop volumineux (ou des programmes malveillants), et si il se fait qu'une faute se glisse dans le code PHP, alors PHP ne prendra pas toute la mémoire du système. Mais ces 8 MB sont vraiment rapidement épuisés.

Cette faute se caractérise par le message « Zero Sized Reply » quand vos modules tentent de fonctionner. Vu que cela arrive rapidement, le mieux est de dédier préalablement suffisamment de mémoire à PHP. Vous pouvez le faire dans le fichier php.ini, dans /etc/php4/apache/ ou /etc/php4/apache2. Recherchez la ligne qui commence par memory_limit et modifiez la de la manière suivante:

memory_limit = 32M ; Maximum amount of memory a script may consume (8MB)

Ajoutez de préférence une ligne de commentaire qui explique pourquoi cette instruction a été modifiée, par exemple:

; modified by tille 20061011 to accomodate views module in drupal

(Télé)Chargement de fichiers

Si plus tard vous souhaitez télécharger les traductions en néerlandais et/ou en français de Drupal, vous devrez autoriser le téléchargement dans la configuration de PHP. Prenez, de nouveau, le fichier php.ini et recherchez la ligne qui commence par: file_uploads. Par défaut, cette variable a la valeur « Off ». Activez cette fonctionnalité:

file_uploads = On

Ajoutez, à nouveau, une ligne de commentaire qui explique pourquoi vous avez apporté cette modification:

; modified by tille 20061205 to accomodate translation upload, may be
; deactivated if file upload is not needed after translation import in Drupal
[Avertissement]Sécurité:

Vu que le téléchargement de fichiers comporte un risque inhérent à la sécurité, désactivez cette instruction dès que le fichier de traduction est importé - à moins que vous ne souhaitiez que vos utilisateurs puissent télécharger des fichiers. Remarquez qu'il s'agit ici des annexes, représentations ou autres matériels que les utilisateurs intègrent aux documents édités en ligne. Pour gérer le contenu du site, il n'est en principe pas nécessaire que cette fonctionnalité soit activée. Nous y reviendrons plus tard.

Installation du module MySQL

Il se peut que le logiciel php4-mysql ne se trouve pas par défaut sur votre système. S'il est manquant installez-le de la façon suivante:

debian:~# apt-get install php4-mysql
         

Vérifier que l'ensemble des logiciels dont vous avez besoin sont présents:

tille@debian:~$ dpkg -l *php* | grep ii
ii  libapache2-mod 4.3.10-18      server-side, HTML-embedded scripting languag
ii  php4           4.3.10-18      server-side, HTML-embedded scripting languag
ii  php4-common    4.3.10-18      Common files for packages built from the php
ii  php4-mysql     4.3.10-18      MySQL module for php4
         

Activer les modifications

Les changements dans la configuration PHP doivent être implémentés dès lors, redémarrez Apache. Comme root ou via sudo:

debian:~# apachectl  restart
/usr/sbin/apachectl restart: httpd restarted