Table des matières
Apache 2 : un serveur web HTTP
Le serveur web Apache permet de desservir les sites web sur Internet.
Pré-requis
- Disposer d'un utilisateur non root
- Quelques connaissances de base des protocoles HTTP, DNS et TCP/IP (adressage, sous-réseaux, etc.) ;
- Un réseau local en état de marche (IP attribuées, connexion à internet) ;
- Un serveur DNS configuré (pour le domaine).
L'arborescence du site se présente comme suit :
Installation
Mise à jour de la version 2.2 vers la version 2.4
- Paramètres de compilation : les modules suivants ont été supprimés :
- mod_authn_default
- mod_authz_default
- mod_mem_cache remplacé par mod_cache_disk
Configuration à l'exécution- Autorisation :
- Les directives
AuthzLDAPAuthoritative,AuthzDBDAuthoritative,AuthzDBMAuthoritative,AuthzGroupFileAuthoritative,AuthzUserAuthoritativeetAuthzOwnerAuthoritativeont été remplacées par les directives RequireAny, RequireNone, et RequireAll. - Si vous utilisez mod_authz_dbm, remplacez les directives du style
Require group …par des directives du style Require dbm-group ….
Remplacez Par Explications Order deny,allow
Deny from allRequire all denied pas d'authentification
toutes les requêtes sont rejetéesOrder allow,deny
Allow from allRequire all granted pas d'authentification
toutes les requêtes sont acceptéesOrder Deny,Allow
Deny from all
Allow from example.orgRequire host example.org pas d'authentification
tous les hôtes du domaine example.org ont l'autorisation d'accès
tous les autres sont rejetésMaxRequestsPerChild MaxConnectionsPerChild MaxClients MaxRequestWorkers DefaultType
Configuration
Apache2 se fonde sur les hôtes virtuels qui sont indispensables.
Il faut créer un hôte virtuel (VirtualHost) pour chaque projet.
Il ne faut pas lancer les sites locaux par
http://localhost/projet1/ouhttp://localhost/projet2/mais par un hôte virtuel pour chacun : http://projet1/ ou http://projet2/Utilisation
Désinstallation
Problèmes connus
Voici une méthode que l'on pourra appliquer à chaque site indépendamment. Éditez avec les droits d'administration le fichier /etc/apache2/site-available/monsite.tld.conf pour y ajouter ceci :
- /etc/apache2/site-available/monsite.tld.conf
php_admin_value upload_max_filesize 128M php_admin_value post_max_size 128M php_admin_value max_execution_time 360 php_admin_value max_input_time 360
Le résultat :
- /etc/apache2/site-available/monsite.tld.conf
<VirtualHost *:80> ServerAdmin admin@mon-domaine.com ServerName monserveur.mon-domaine.com DocumentRoot /usr/share/phpmyadmin php_admin_value upload_max_filesize 128M php_admin_value post_max_size 128M php_admin_value max_execution_time 360 php_admin_value max_input_time 360 </VirtualHost>
Éditez avec les droits d'administration le fichier /etc/php/8.1/fpm/pool.d/www.conf pour ajouter ceci à la fin :
- /etc/php/8.1/fpm/pool.d/www.conf
... php_admin_value[upload_max_filesize] = 1000M php_admin_value[memory_limit] = 10000M ;128M php_admin_value[post_max_size] = 1000M
redémarrez le service PHP8.0
Voir aussi