Table des matières

Apache 2 : un serveur web HTTP

Le serveur web Apache permet de desservir les sites web sur Internet.

Pré-requis

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

  1. 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
  2. Configuration à l'exécution
    1. 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/

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


Basé sur « Article » par Auteur.