L’erreur “Request-URI Too Long” dans Apache se produit lorsqu’un client envoie une URL qui dépasse la limite de longueur prédéfinie par le serveur. Ce problème peut empêcher les utilisateurs d’accéder à des pages spécifiques et est généralement rencontré dans les applications qui transmettent de grandes quantités de données dans l’URL.
Si vous êtes à la recherche d’une solution d’hébergement performante avec des configurations de serveur optimisées, Ava Hosting propose des serveurs VPS et dédiés avec un support complet d’Apache afin de prévenir et de résoudre efficacement ce type d’erreurs.
Modifiez la directive LimitRequestLine dans votre fichier de configuration Apache pour augmenter la longueur de requête autorisée.
sudo nano /etc/apache2/apache2.conf # Debian/Ubuntu
sudo nano /etc/httpd/conf/httpd.conf # CentOS/RHEL
LimitRequestLine 8190
La valeur par défaut est de 8190 octets (8 KB). Vous pouvez l’augmenter à 16384 (16 KB) ou plus si nécessaire.
sudo systemctl restart apache2 # Debian/Ubuntu
sudo systemctl restart httpd # CentOS/RHEL
La directive LimitRequestFieldSize contrôle la taille maximale d’un champ d’en-tête de requête HTTP. Si vous avez de longues URL avec des en-têtes, il peut être utile d’augmenter cette valeur.
sudo nano /etc/apache2/apache2.conf # Debian/Ubuntu
sudo nano /etc/httpd/conf/httpd.conf # CentOS/RHEL
LimitRequestFieldSize 16384
sudo systemctl restart apache2 # Debian/Ubuntu
sudo systemctl restart httpd # CentOS/RHEL
Si votre serveur se trouve derrière un proxy ou un équilibreur de charge, mettez à jour ses paramètres pour autoriser des URI plus longs.
Pour Nginx :
proxy_buffer_size 16k ;
proxy_buffers 4 32k ;
proxy_busy_buffers_size 64k ;
large_client_header_buffers 4 16k ;
Pour HAProxy :
option http-buffer-request
max-header-size 32768
Après avoir effectué les modifications, redémarrez le service concerné :
sudo systemctl restart nginx # Pour Nginx
sudo systemctl restart haproxy # Pour HAProxy
Si mod_security est activé, il se peut qu’il bloque les longs URI de requête. Pour vérifier s’il est à l’origine du problème, désactivez-le temporairement :
sudo a2dismod security2 # Debian/Ubuntu
sudo systemctl restart apache2 # Restart Apache
Si la désactivation de mod_security résout le problème, envisagez de personnaliser ses règles au lieu de le désactiver définitivement.
L’erreur “Request-URI Too Long” dans Apache peut être résolue en augmentant les limites de requêtes, en optimisant les URL des applications, en ajustant les paramètres du proxy ou en modifiant les configurations de sécurité. En suivant ces étapes, vous pouvez vous assurer que votre serveur web traite efficacement les requêtes sans interrompre les fonctionnalités.