Date de publication: le vendredi 13 juillet 2007 à 03h08
Dernière modification: par Pascal BOYER le dimanche 26 septembre 2010 à 20h17
« Article précédent: Building and Installing PHP -- Compiler et installer PHP
» Article suivant: Alternative PHP Cache (APC) -- Cache PHP Alternatif
Apache and PHP are now installed in the system. Before you start using them you must make some configuration changes in the Apache and PHP configuration files.
Apache et PHP étant maintenant installés sur votre système, vous devez, avant de commencer à vous en servir, effectuer quelques modifications dans leur fichier de configuration respectif.
PHP configuration / Configuration de PHP
During the PHP installation we told PHP to look in the /usr/local/apache/conf directory for the php.ini configuration file. However, this file does not yet exist. Run the following command to create a new empty configuration file for PHP:
Lors de son installation, nous avons indiqué à PHP de rechercher son fichier de configuration php.ini dans le répertoire /usr/local/apache/conf . Cependant, comme ce fichier n'existe pas encore, exécutez la commande suivante pour en créer un nouveau vide:
Recommended PHP configuration (php.ini) for eZ publish / Configuration recommandée de PHP ( php.ini) pour l'utilisation de eZ publish
This section shows the recommended contents of the php.ini file located in the /usr/local/apache/conf directory.
Ce paragraphe présente les options de configuration qu'il est recommandé de mettre dans le fichier php.ini situé dans le répertoire /usr/local/apache/conf:
; Safe Mode safe_mode = Off ; Magic quotes for incoming GET/POST/Cookie data. magic_quotes_gpc = Off; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc. magic_quotes_runtime = Off register_globals = Off allow_call_time_pass_reference = Off ; Maximum amount of memory a script may consume (xMB) memory_limit = 64M ; Maximum execution time of each script, in seconds max_execution_time = 90 ; Whether to allow the treatment of URLs (like http:// or ftp://) as files. allow_url_fopen = On ; Whether to allow HTTP file uploads. file_uploads = On ; open_basedir, if set, limits all file operations to the defined directory ; and below. This directive makes most sense if used in a per-directory ; or per-virtualhost web server configuration file. This directive is ; *NOT* affected by whether Safe Mode is turned On or Off. ;open_basedir =
The contents of this snippet are interpreted as follows:
Les paramètres de cet extrait du fichier php.ini sont interprétés de la manière suivante:
; Magic quotes for incoming GET/POST/Cookie data. magic_quotes_gpc = Off
"Magic quotes" is a process that automatically escapes incoming data to the PHP script. It is preferred to code with magic quotes off and to instead escape the data as needed at runtime. eZ publish will work with this option enabled. However, it will slightly reduce performance because all input variables must be converted back to normal. Therefore we recommend that the option is turned off.
"Magic quotes" est un processus qui échappe/protège automatiquement les données des scripts PHP. Il est préférable de coder avec ce paramètre positionné à off et d'échapper les données comme on le souhaite lors de l'exécution. eZ Publish fonctionnera tout de même si cette option est positionnée à on mais cela réduira légèrement ses performances car toutes les variables d'entrée devront être converties. Nous recommandons donc de positionner ce paramètre à off.
; Maximum amount of memory a script may consume (xMB) memory_limit = 64M
The default maximum amount of memory a script may consume is 8 MB. This is too low for eZ publish to run. eZ publish needs at least 64 MB to run the Setup Wizard. Normal operation requires about 16 MB. However, we recommend that you keep the setting at 64 MB, as certain features (such as PDF export and search reindex) use more than 16 MB. Multilingual sites that store the content in Unicode (UTF-8) also require at least 64 MB.
Par défaut, la quantité maximum de mémoire allouée à l'exécution d'un script PHP est 8 Mo. Mais cela est trop peu pour le fonctionnement de l'
interface graphique d'installation
de eZ Publish qui requière au moins 64 Mo. Les opérations courantes requièrent environ 16 Mo de mémoire. Cependant, nous préconisons de positionner ce paramètre à 64M car certaines fonctions comme l'
export au format PDF
et la
recherche indexée
(???) utilisent plus de 16 Mo. Les sites
Multilingues
qui stockent leurs contenus en utilisant le jeux de caractères unicode UTF-8 requièrent également au moins 64Mo de mémoire.
; Maximum execution time of each script, in seconds
max_execution_time = 90
Depending on your hardware configuration, the execution time of some operations (like template compilation or parsing translation files) might take more than the default 30 seconds. We recommend that you increase the maximum execution time to at least 90 seconds. If you get output similar to the following , your max_execution_time setting is too low:
En fonction de votre configuration matérielle, le temps d'exécution de certaines opérations (telles que la compilation de templates ou l'analyse des fichiers de traductions) peut excéder la valeur par défaut du paramètre max_execution_time à savoir 30 secondes. Nous vous recommandons donc d'augmenter la valeur du temps maximum alloué à l'exécution des scripts PHP à au moins 90 secondes. Si vous obtenez des messages d'erreur similaires à l'exemple donné ci-dessous, alors la valeur de votre paramètre max_execution_time est trop faible:
Fatal error: Maximum execution time of 30 seconds exceeded in ...
Fatal error: eZ publish did not finish its request
The execution of eZ publish was abruptly ended, the debug output is presented below.
Apache configuration / Configuration d'Apache
Once the PHP settings are configured, you must configure the Apache web server. Edit the httpd.conf file to load the PHP module. The Apache configuration file is located by default in the conf/ directory of the Apache installation (/ usr/local/apache/conf ).
Une fois la configuration de PHP terminée, vous devez configurer le serveur web Apache. Pour cela, éditez le fichier htpd.conf afin d'indiquer à Apache de charger le module PHP. Par défaut, le fichier de configuration d'Apache est situé dans le sous-répertoire conf/ du répertoire d'installation ( usr/local/apache/conf).
The LoadModule statement must point to the path of the PHP module on your system, usually libexec/libphp4.so under the Apache installation directory. The make install routine may have already added LoadModule for you in the httpd.conf , but check just in case.
La directive LoadModule doit indiquer le chemin vers le module PHP présent sur votre système. Normalement, ce module se trouve dans le sous-répertoire libexec/ du répertoire d'installation d'Apache et ce nomme libphp4.so. La routine make install devrait déjà avoir installé cette directive dans le fichier httpd.conf, mais vérifiez tout de même qu'il contient bien cette ligne:
LoadModule php4_module libexec/libphp4.so
Next we need to tell Apache to parse specific extensions as PHP scripts. The most common configuration is to tell Apache to parse the .php extension as PHP. You can assign any extension to PHP by simply adding more extensions to the list, with each extension separated by a space.
Nous devons à présent indiquer à Apache de considérer certaines extensions spécifiques de fichier comme des scripts PHP. La configuration la plus courante consiste à dire à Apache de traiter les fichiers dont l'extension est .php comme du PHP. Vous pouvez lier n'importe quelle extension à PHP en ajoutant simplement d'autres extensions à la liste, chaque extension étant séparée par un espace:
AddType application/x-httpd-php .php
It is also common to configure the .phps extension to show highlighted PHP source. This can be done as follows:
Il est également courant de configurer l'extension .phps afin qu'Apache affiche le code source PHP surligné. Ceci peut être fait de la manière suivante:
AddType application/x-httpd-php-source .phps
Virtual host configuration / Configuration d'un hôte virtuel
By making use of virtual hosts, it is possible to have several sites running on the same server. The sites are usually differentiated by the domain name by which they are accessed. Apache will look for a specified set of domains and use different configuration settings based on the domain that is requested.
En utilisant un
hôte virtuel
, il est possible d'avoir plusieurs sites hébergés par un même serveur web. Il est courant de différencier les sites par les noms de domaine avec lesquels on accède à ces sites. Apache recherchera l'ensemble des domaines spécifiés et utilisera des paramètres de configuration différents en fonction du domaine indiqué dans la requête.
Virtual hosts are usually defined at the end of the httpd.conf configuration file, which is the main configuration file for Apache. To add a virtual host for eZ publish, copy the following lines and replace the text encapsulated by the square brackets with actual values. The next section has a real-life example of using virtual hosts.
Les hôtes virtuels sont souvent définis à la fin du fichier de configuration httpd.conf (qui est le fichier de configuration principal d'Apache). Pour ajouter un hôte virtuel pour eZ publish, copiez les lignes ci-dessous en remplaçant le texte placé entre crochets par de vraies valeurs.
Virtual hosts configuration example for eZ publish:
Exemple de configuration d'hôte virtuel pour eZ publish:
NameVirtualHost [IP_ADDRESS] <VirtualHost [IP_ADDRESS]:[PORT]> <Directory [PATH_TO_EZPUBLISH]> Options FollowSymLinks AllowOverride None </Directory> <IfModule mod_php4.c> php_admin_flag safe_mode Off php_admin_value register_globals 0 php_value magic_quotes_gpc 0 php_value magic_quotes_runtime 0 php_value allow_call_time_pass_reference 0 </IfModule> DirectoryIndex index.php <IfModule mod_rewrite.c> RewriteEngine On Rewriterule ^/var/storage/.* - [L] Rewriterule ^/var/[^/]+/storage/.* - [L] RewriteRule ^/var/cache/texttoimage/.* - [L] RewriteRule ^/var/[^/]+/cache/texttoimage/.* - [L] Rewriterule ^/design/[^/]+/(stylesheets|images|javascript)/.* - [L] Rewriterule ^/share/icons/.* - [L] Rewriterule ^/extension/[^/]+/design/[^/]+/(stylesheets|images|javascripts?)/.* - [L] Rewriterule ^/packages/styles/.+/(stylesheets|images|javascript)/[^/]+/.* - [L] RewriteRule ^/packages/styles/.+/thumbnail/.* - [L] RewriteRule ^/favicon\.ico - [L] RewriteRule ^/robots\.txt - [L] # Uncomment the following lines when using popup style debug. # RewriteRule ^/var/cache/debug\.html.* - [L] # RewriteRule ^/var/[^/]+/cache/debug\.html.* - [L] RewriteRule .* /index.php </IfModule> DocumentRoot [PATH_TO_EZPUBLISH ServerName [SERVER_NAME] ServerAlias [SERVER_ALIAS] </VirtualHost>
The pertinent settings are interpreted as follows:
Les paramètres sont interprétés de la façon suivante:
| [IP_ADDRESS] |
The IP address of the virtual host, for example "128.39.140.28". Apache allows the use of wildcards here ("*"). L'adresse IP de l'hôte virtuel, par exemple 128.39.140.28 Apache autorise ici l'emploi des caractères spéciaux ("*") |
| [PORT] |
The port on which the web server listens for incoming requests. This is an optional setting; the default port is 80. The combination of an IP address and a port is often referred to as a "socket". Apache allows the use of wildcards here ("*"). Le numéro du port sur lequel le serveur web écoute les réquêtes entrantes. Ceci est un paramètre optionnel. Le port par défaut est le port 80. L'association d'une adresse IP et d'un numéro de port constitue un "socket". Apache autorise ici l'emploi des caractères spéciaux ("*") |
| [PATH_TO_EZPUBLISH] |
The path to the directory that contains eZ publish. This must be the absolute path, for example " /var/www/ezpublish ". Le chemin vers le répertoire contenant eZ Publish. Ce doit être un chemin absolu, par exemple: /var/www/ezpublish |
| [SERVER_NAME] |
The host or IP address that Apache should look for. If a match is found, the virtual host settings will be used. L'hôte ou l'adresse IP qu'Apache doit chercher. Si une concordance est trouvée, les paramètres de l'hôte virtuel afférent seront utilisés. |
| [SERVER_ALIAS] |
Additional hosts / IP addresses that Apache should look for. If a match is found, the virtual host settings will be used. Hôtes ou adresses IP supplémentaires qu'Apache devra rechercher. Si une concordance est trouvée, les paramètres de l'hôte virtuel afférent seront utilisés. |
Note that the mod_rewrite module must be enabled in httpd.conf in order to use the Rewrite Rules.
Notez que dans le fichier httpd.conf le module mod_rewrite doit être activé afin de pouvoir utiliser les règles de réécriture des URI.
Commentaires














