Paramètres d'Apache et Nginx

Par défaut, Plesk utilise le serveur Web Apache (http://fr.wikipedia.org/wiki/Apache_HTTP_Server) pour afficher les pages de votre site Web à tous les clients (comme les navigateurs via lesquels les visiteurs accèdent à votre site Web). Afin d'améliorer les performances, Apache est utilisé en complément d'un autre serveur Web : Nginx. Vous pouvez aussi utiliser uniquement Nginx.

Les paramètres par défaut du serveur Web sont indiqués par l'administrateur du serveur (hébergeur). Ces paramètres peuvent déterminer comment un serveur Web traite différents types de fichiers, comment ils utilisent le SSL/TLS, où ils stockent les fichiers de log, etc.

Toutefois, vous pouvez (en tant que propriétaire de site Web) définir des paramètres personnalisés de serveur Web pour votre site Web. Par exemple, ajouter un type de fichiers index, restreindre l'accès au site, etc.

Remarque : vous pouvez ajuster les paramètres de serveur Web pour vos sites Web si votre abonnement d'hébergement accorde les droits correspondants.

Next in this section:

Ajuster les paramètres d'Apache et Nginx

Configurer les types MIME

Configurer les gestionnaires Apache

Refuser l'accès aux sites Web

Configurer les fichiers index

Configurer l'en-tête "Expire"

Configurer d'autres en-têtes

Restreindre le suivi des liens symboliques

Hébergement Nginx uniquement

Configurer le traitement des fichiers statiques

Activer la mise en cache Nginx

Valeur par défaut des paramètres du serveur

 
Ajuster les paramètres d'Apache et Nginx

Apache et Nginx disposent de certains paramètres que vous pouvez personnaliser au niveau du domaine. Vous les trouverez sous Sites Web & Domaines > nom de domaine > Paramètres d'Apache et Nginx. Ces paramètres sont séparés en deux groupes :

  • Paramètres communs Apache
  • Paramètres Nginx

    apache

 
Configurer les types MIME

Les types MIME font la correspondance entre les extensions de fichiers et les types de fichiers pour indiquer aux navigateurs Web comment gérer certains types de fichiers. Par exemple, le type MIME suivant :

text/plain .txt

Cela indique au navigateur Web de traiter les fichiers .txt comme du texte brut. Par défaut, la plupart des types MIME les plus fréquents sont déjà préconfigurés. Toutefois, si vous réalisez que certaines pages de votre site Web ne sont pas traitées correctement par les navigateurs Web parce que vous utilisez des fichiers avec des extensions non standard, vous devez configurer un ou plusieurs types MIME personnalisés.

Pour configurer des types MIME personnalisés :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Dans Types MIME, cochez la case Entrer une valeur personnalisée.
  3. Saisissez les types MIME souhaités ou supprimez ceux dont vous n'avez pas l'usage, et cliquez sur OK.
 
Configurer les gestionnaires Apache

Les gestionnaires Apache indiquent au navigateur Web comment traiter les fichiers avec des extensions spécifiques. Par exemple, le gestionnaire suivant :

cgi-script .cgi

Ce gestionnaire indique au serveur Web comment traiter tous les fichiers .cgi en tant que scripts cgi. Par défaut, les gestionnaires de fichiers avec des extensions fréquentes sont déjà préconfigurés. Toutefois, si vous voulez changer le gestionnaire utilisé pour traiter des fichiers avec une extension spécifique, vous devez configurer un ou plusieurs gestionnaires personnalisés.

Pour configurer des gestionnaires personnalisés :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Dans Gestionnaires, sélectionnez Entrer une valeur personnalisée.
  3. Saisissez les en-têtes souhaités ou supprimez ceux dont vous n'avez pas l'usage, et cliquez sur OK.
 
Refuser l'accès aux sites Web

Vous pouvez interdire l'accès à votre site Web à certains visiteurs. Par exemple :

  • Adresses IP individuelles (par ex., 192.168.1.110)
  • Sous-réseaux d'adresses IP (par ex.,127.0.0.1/8)
  • Noms d'hôtes spécifiques (par ex., exemple.com)
  • Tout le monde (en utilisant un astérique "*")

Les visiteurs bloqués verront le message d'erreur "403 Forbidden" lorsqu'ils essaient de parcourir votre site Web.

Pour configurer l'accès à votre site Web :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Dans Refuser l'accès au site, sélectionnez Entrer une valeur personnalisée.
  3. Saisissez les adresses IP, sous-réseaux ou noms d'hôtes souhaités ou supprimez ceux dont vous n'avez pas l'usage.
  4. Si vous avez bloqué un sous-réseau et si vous voulez tout de même autoriser une ou plusieurs adresses IP appartenant à ce sous-réseau à accéder à votre site Web, saisissez ces adresses IP dans le champ Sauf.
  5. Cliquez sur OK.

 
Configurer les fichiers index

Quand un visiteur de votre site clique sur une URL qui renvoie vers un répertoire au lieu d'un fichier spécifique (par exemple, www.exemple.com ou www.exemple.com/exemple au lieu de www.exemple.com/index.html), Apache cherche un fichier index à afficher. Par défaut, Apache cherche les fichiers suivants (dans l'ordre spécifié) :

  1. index.html
  2. index.cgi
  3. index.pl
  4. index.php
  5. index.xhtml
  6. index.htm
  7. index.shtml

Si les sept fichiers sont présents dans le répertoire, le visiteur verra le fichier index.html. Si le fichier index.html est absent, Apache cherche le fichier index.cgi à la place, etc. Si aucun fichier index n'est disponible, par défaut, la page d'erreur "403 Forbidden" est affichée.

Dans Plesk, vous pouvez préciser quels fichiers index Apache doit chercher quand un visiteur parcourt un répertoire sur votre site Web :

  • Vous pouvez changer l'ordre de recherche des fichiers index (par exemple, afficher par défaut le fichier index.php à la place du fichier index.html).
  • Vous pouvez ajouter ou supprimer des fichiers index de la liste (par exemple, si la page par défaut de votre site Web est intitulée hello.php, vous pouvez indiquer à Apache de l'afficher par défaut).

Pour configurer les fichiers index :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Dans Fichiers Index, sélectionnez Entrer une valeur personnalisée.
  3. Saisissez les noms des fichiers index souhaités dans l'ordre dans lequel Apache doit les rechercher, et cliquez sur OK.

 
Configurer l'en-tête "Expire"

L'en-tête Apache expire gouverne le temps de conservation en cache par les navigateurs Web du contenu Web avant que celui-ci ne soit requis à nouveau par le serveur. Configurer cet en-tête peut réduire la charge du serveur et accélérer le chargement de votre site Web.

Par exemple, si vous définissez la période d'expiration sur 10 jours : Un visiteur parcourt votre site Web et requiert la page index.html. Le navigateur Web du visiteur stocke une copie de la page en cache. Pendant les 10 jours suivants, il présente la copie en cache à chaque fois que le visiteur consulte votre site Web. Le onzième jour, quand la page est à nouveau requise, le navigateur la requiert à nouveau auprès du serveur, car la date d'expiration de la page stockée en cache est dépassée.

Lorsque vous configurez l'en-tête Expire pour des sites Web qui proposent du contenu dynamique, nous vous recommandons d'activer l'option réponse avec en-têtes Expire uniquement pour les fichiers statiques . Sinon, tout le contenu, y compris le contenu dynamique, sera stocké dans le cache du navigateur du visiteur, jusqu'à expiration. Ceci n'est pas recommandé, car le contenu dynamique est, par définition, mis à jour fréquemment.

Pour configurer l'en-tête "Expire" :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Dans Expire, sélectionnez Entrer une valeur personnalisée.
  3. Saisissez la période d'expiration souhaitée (nous recommandons 14 jours comme période d'expiration).
  4. Si votre site Web dispose de contenu dynamique, veillez à cocher la case réponse avec en-têtes Expire uniquement pour les fichiers statiques.
  5. Cliquez sur OK.

Remarque : si Nginx est activé, seuls les fichiers servis par Apache auront l'en-tête Expire. Si la case Traiter intuitivement les fichiers statiques est cochée, les fichiers traités en tant que fichiers statiques sont déterminés par les configurations par défaut Apache et Nginx. Si la case Traiter les fichiers statiques directement avec Nginx est cochée et si des types d'extensions de fichiers sont spécifiés, alors Nginx sert uniquement les fichiers avec les extensions spécifiées.

 
Configurer d'autres en-têtes

Vous pouvez configurer d'autres en-têtes pour les réponses HTTP en suivant ce modèle :

Name : Value

Les en-têtes de réponse HTTP contiennent des informations sur la page requise pour indiquer aux navigateurs Web de réaliser certaines actions. Par exemple, l'en-tête suivant protège les visiteurs de votre site Web contre le clickjacking:

X-Frame-Options: DENY

Pour configurer d'autres en-têtes :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Dans Autres en-têtes, sélectionnez Entrer une valeur personnalisée.
  3. Saisissez les en-têtes souhaités ou supprimez ceux dont vous n'avez pas l'usage, et cliquez sur OK.

 
Restreindre le suivi des liens symboliques

Par défaut, Apache est autorisé à suivre les liens symboliques. Si votre site Web n'utilise pas de liens symboliques, nous vous recommandons de désactiver cette option, car elle comporte un risque de sécurité mineur.

Pour interdire à Apache de suivre les liens symboliques :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Cochez la case Restreindre le suivi des liens symboliques et cliquez sur OK.

 
Hébergement Nginx uniquement

Sur Plesk pour Linux, vous pouvez héberger les sites Web à l'aide d'une combinaison de Nginx et de PHP-FPM. Dans ce cas, les requêtes de sites Web ne sont pas transmises à Apache, à la place, elles sont servies par Nginx. L'hébergement Nginx uniquement est une option parfaitement adaptée pour les sites Web PHP, mais aussi pour l'hébergement de sites Web statiques et les serveurs d'applications. Vous pouvez configurer des sites Web individuels de sorte qu'ils soient servis uniquement par Nginx, sans arrêter ou désactiver Apache. Ceci n'impacte en aucune manière les sites Web hébergés à l'aide d'Apache.

Remarque : les services de Plesk (par exemple, la messagerie Web) continuent de fonctionner à l'aide d'Apache et ne sont pas affectés par le passage à l'hébergement uniquement avec Nginx.

Pour activer/désactiver l'hébergement Nginx uniquement pour un domaine :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Dans la section Paramètres Nginx, décochez la case Mode proxy
  3. Cliquez sur Appliquer.

Pour revenir à un hébergement Apache + Nginx pour un domaine, cochez à nouveau la case Mode proxy.

Limitations connues

Voici certaines limitations que vous risquez de rencontrer lorsque vous passez à l'hébergement Nginx uniquement pour un domaine :

  • Le partage de fichiers devient indisponible.
  • La prise en charge de SSI, Perl et Python devient indisponible.
  • Vous pouvez utiliser uniquement le gestionnaire PHP "Application FPM servie par Nginx".

 
Configurer le traitement des fichiers statiques

Par défaut, sur les serveurs Plesk pour Linux, Nginx et Apache travaillent ensemble. Apache sert le contenu dynamique et Nginx est utilisé comme proxy permettant de servir le contenu statique. Ce procédé optimise l'utilisation des ressources du serveur et permet à Plesk de servir plus rapidement les requêtes pour les sites Web hébergés. Toutefois, dans Plesk vous pouvez choisir comment le contenu statique de vos sites Web doit être traité.

Servir tout le contenu statique via Nginx

Il s'agit du fonctionnement par défaut de Plesk pour Linux. Quand il ya une requête entrante pour du contenu statique, Apache indique uniquement l'emplacement du fichier correspondant. Nginx cherche et sert le fichier.

Pour servir tout le contenu statique via Nginx :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx et faites défiler l'écran jusqu'à la section "Paramètres Nginx".
  2. Cochez les cases Mode proxy et Traiter intuitivement les fichiers statiques.
  3. Ne cochez pas la case Traiter les fichiers statiques directement avec Nginx.
  4. Cliquez sur OK.
Servir uniquement des fichiers avec des extensions spécifiques via Nginx

Si vous voulez, vous pouvez configurer Plesk pour servir uniquement des fichiers avec des extensions spécifiques comme contenu statique via Nginx. Les autres fichiers généralement classés comme du contenu statique sont servis par Apache. Important : notez qu'avec ce scénario, les requêtes concernant les fichiers avec les extensions spécifiées ne sont jamais transmises à Apache. Par conséquent, elles ne sont pas traitées par les gestionnaires Apache. Cela signifie par exemple que les règles de réécriture ou les directives .htaccess ne sont pas appliquées.

Pour servir uniquement du contenu statique spécifique via Nginx :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx et faites défiler l'écran jusqu'à la section "Paramètres Nginx".
  2. Cochez les cases Mode proxy et Traiter les fichiers statiques directement avec Nginx.
  3. Par défaut, certaines extensions de fichiers statiques sont déjà préconfigurées dans le champ Traiter les fichiers statiques directement avec Nginx. Vous pouvez ajouter ou supprimer des extensions selon vos besoins. Séparez les extensions de fichiers individuelles à l'aide d'espace ou à l'aide du caractère "|".
  4. Cliquez sur OK.

Remarque : quand vous activez l'option "Traiter les fichiers statiques directement avec Nginx", le mode "Traiter intuitivement les fichiers statiques" se désactive automatiquement, même si la case reste cochée par la suite.

Servir tout le contenu statique et dynamique via Apache

Si vous voulez, vous pouvez désactiver Nginx et configurer Apache pour servir tout le contenu, statique et dynamique. Cela peut être pratique dans des cas spécifiques, comme résoudre des problèmes liés à Nginx. Pour les sites Web de production, nous vous recommandons de ne pas traiter tout le contenu avec Apache.

Pour servir tout le contenu statique et dynamique via Apache :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx et faites défiler l'écran jusqu'à la section "Paramètres Nginx".
  2. Cochez la case Mode proxy mode.
  3. Décochez les cases Traiter intuitivement les fichiers statiques et Traiter les fichiers statiques directement avec Nginx
  4. Cliquez sur OK.

 
Activer la mise en cache Nginx

Lorsque la mise en cache Nginx est activée, le serveur proxy Nginx met en cache certains contenus dynamiques de sites. Les données mises en cache sont stockées pour une courte durée (en général, quelques secondes). Cela peut accélérer le temps de charge d'un site Web et réduire la charge du serveur.

Nous vous recommandons d'activer la mise en cache Nginx uniquement pour les sites Web correspondant à un profil spécifique (par exemple, les blogs populaires ou les nouveaux sites Web) :

  • Trafic élevé
  • Contenu mis à jour toutes les quelques secondes

La mise en cache peut être inutile, voire néfaste, pour les sites Web au profil suivant :

  • Trafic modéré ou faible
  • Contenu mis à jour à un intervalle moins élevé que quelques secondes
  • Utilisation de contenu personnalisé (par exemple, emplacement géographique du visiteur ou contenus des paniers des visiteurs)

Pour activer la mise en cache Nginx :

  1. Allez dans Sites Web & Domaines > Paramètres d'Apache et Nginx.
  2. Dans la section "Paramètres Nginx", cochez la case "Activer la mise en cache Nginx".
  3. (Facultatif) Vous pouvez personnaliser les paramètres de mise en cache Nginx. Si vous n'avez pas l'habitude d'utiliser la mise en cache Nginx, nous vous recommandons de conserver les paramètres par défaut. Si ces paramètres sont mal configurés, ils peuvent affecter les performances du site Web et du serveur.
  4. Cliquez sur OK.
Paramètres de mise en cache Nginx

Les paramètres de mise en cache Nginx affichés dans l'interface Plesk correspondent aux directives Nginx et à certains enregistrements dans le fichier de configuration Nginx. Vous pouvez voir les détails dans le tableau ci-dessous.

Paramètre de micro-caching affiché dans la GUI Plesk

Directive Nginx correspondante

Paramètre Nginx correspondant (le cas échéant)

"Taille de cache"

proxy_cache_path

max_size

"Expiration du délai de mise en cache"

proxy_cache_valid

 

"Clé de cache"

proxy_cache_key

 

"Mettre en cache les requêtes avec des cookies"

Spécifié dans le fichier de configuration Nginx

 

"Désactiver le cache pour les emplacements"

Spécifié dans le fichier de configuration Nginx

 

"Ignorer le cache si"

proxy_cache_bypass

 

"Renvoyer les enregistrements mis en cache expirés"

proxy_cache_use_stale

 

Remarque : pour les sites Web qui utilisent Nginx en tandem avec le gestionnaire PHP-FPM, les directives proxy_cache* sont remplacées par fastcgi_cache*. Par exemple, le paramètre "Clé de cache" est gouverné par la directive fastcgi_cache_key à la place de proxy_cache_key.

Paramètre "Mettre en cache les requêtes avec des cookies"

Par défaut, Nginx ne met pas en cache les requêtes HTTP qui contiennent  l'en-têteCookie HTTP . Vous pouvez changer ce comportement et faire en sorte que les requêtes HTTP de mise en cache Nginx contiennent certains cookies en précisant les noms des cookies dans le champ "Mettre en cache les requêtes avec des cookies". Par exemple, si vous spécifiez les noms de cookies _ga et _gid, Nginx mettra uniquement en cache les requêtes HTTP avec les en-têtes de cookies contenant _ga ou _gid. Nginx ne mettra pas en cache les requêtes HTTP avec les en-têtes de cookies contenant au moins un nom de cookie non spécifié dans le champ.

????

Paramètre "Désactiver le cache pour les emplacements"

Vous pouvez réduire la charge du serveur en configurant Nginx pour qu'il ne mette pas en cache certains contenus Web (par exemple, le contenu dynamique qui n'est pas souvent vu). Pour cela, spécifiez la variable $request_uri voulue dans le champ "Désactiver le cache pour les emplacements". Par exemple, si vous spécifiez /wp-admin/, ne mettra pas en cache le contenu lié au Panneau d'administration WordPress.

uri

Remarque : si vous voulez spécifier plusieurs valeurs dans les champs "Mettre en cache les requêtes avec des cookies" et "Désactiver le cache pour les emplacements", spécifiez une valeur sur chaque ligne.

 
Valeur par défaut des paramètres du serveur

Vous pouvez définir la valeur de chaque paramètre soit en saisissant une valeur personnalisée, soit en laissant la valeur Par défaut. Dans ce cas, Plesk utilise les valeurs de la configuration du serveur Web par défaut définie par l'administrateur du serveur (hébergeur).

Lorsque vous définissez vos valeurs, celles-ci écrasent les valeurs par défaut, sauf pour le paramètre Refuser l'accès au site : les adresses IP de la configuration par défaut ainsi que les adresses IP que vous indiquez seront toutes appliquées à votre site Web. En cas de conflit (par exemple, si vous autorisez une adresse IP refusée par la configuration par défaut), Apache utilise vos paramètres.