{{tag>Logiciel}} ====== 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 : RACINE | #--www | #--html | +--site 1 +--site 2 #-- ... ===== 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, AuthzUserAuthoritative et AuthzOwnerAuthoritative ont é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 all | **Require all denied** | pas d'authentification\\ toutes les requêtes sont rejetées | | Order allow,deny\\ Allow from all | **Require all granted** | pas d'authentification\\ toutes les requêtes sont acceptées | | Order Deny,Allow\\ Deny from all\\ Allow from example.org | **Require 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és | | MaxRequestsPerChild | **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/%% ou %%http://localhost/projet2/%% mais par un hôte virtuel pour chacun : **%%http://projet1/%%** ou **%%http://projet2/%%** - **[[logiciel:internet:serveur:apache:vhost:start|]]** - **Modules** - **[[logiciel:internet:serveur:apache:vhostalias:start|]]** ===== Utilisation ===== ===== Désinstallation ===== ===== Problèmes connus ===== ??? Augmenter la taille d'upload d'un virtualhost sans modifier php.ini !!! **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 : 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 : 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 ??? Augmenter la taille d'upload en modifiant php.ini !!! Éditez avec les droits d'administration le fichier **/etc/php/8.1/fpm/pool.d/www.conf** pour ajouter ceci à la fin : ... 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 ===== * **(fr)** [[http://httpd.apache.org/docs/2.4/|Documentation du Serveur HTTP Apache Version 2.4]] * **(fr)** [[https://www.vincentliefooghe.net/content/configuration-apache-24-php-fpm|Configuration Apache 2.4 / PHP-FPM]] (très clair, à jour) * **(fr)** [[https://www.digitalocean.com/community/tutorials/how-to-install-the-apache-web-server-on-ubuntu-18-04|How To Install the Apache Web Server on Ubuntu 18.04]] * **(fr)** [[https://httpd.apache.org/docs/trunk/fr/upgrading.html|Mise à jour de la version 2.2 vers la version 2.4]] * **(fr)** [[https://httpd.apache.org/docs/trunk/fr/new_features_2_4.html|Vue d'ensemble des nouvelles fonctionnalités de la version 2.4 du serveur HTTP Apache]] ---- //Basé sur << [[http://Article|Article]] >> par Auteur.//