Comment augmenter la longueur de requête HTTP GET maximale autorisée dans Jetty?

14

Nous utilisons Jetty pour exécuter un index Apache Solr. Nous avons eu des requêtes qui ont dépassé de loin la longueur maximale précédemment attendue, et nous avons maintenant des problèmes où la plupart des requêtes ne renvoient aucune donnée car le serveur ne répond pas (le navigateur dit "réinitialisation de la connexion").

Ces demandes ne sont pas effectuées via un navigateur, elles sont effectuées par programmation à l'aide de la bibliothèque PHP Apache_Solr_Service. L'application attend des requêtes en tant que requêtes HTTP GET, donc le simple fait de passer à un POST ne résoudra pas ce problème.

Comment pouvons-nous augmenter la longueur de requête HTTP GET maximale autorisée dans Jetty?

Merci!

Michael Moussa
la source

Réponses:

3

Quelle est la longueur d'URL maximale dans Tomcat?

JamesRyan
la source
Merci mais j'ai dit Jetty, pas Tomcat. Je n'arrive pas à trouver nulle part dans les fichiers de configuration de Jetty où je mettrais les paramètres auxquels vous avez lié.
Michael Moussa
headerbuffersize?
JamesRyan
Essayé. Pas de chance.
Michael Moussa
Nous avons décidé d'abandonner Jetty et de passer à Tomcat. Après cela, nous avons pu apporter les modifications indiquées dans le lien que vous avez fourni et nous ne rencontrons plus de problèmes. Merci!
Michael Moussa
12
<Set name="headerBufferSize">65536</Set>

est désormais obsolète. Vous pouvez utiliser:

<Set name="requestHeaderSize">65535</Set>

au lieu.

Nikolay
la source
J'utilise Solr 4 et l'utilisation de <Set name = "headerBufferSize"> 65536 </Set> a empêché le démarrage de l'instance. L'utilisation de <Set name = "requestHeaderSize"> 65535 </Set> a fonctionné.
Redtopia
8

Un peu tard pour la fête, mais je viens de rencontrer le même problème.

Ajoutez ce qui suit à la section connecteurs de jetty.xml:

<Set name="headerBufferSize">65536</Set>

Cela augmentera la limite d'en-tête de la valeur par défaut de 4 Ko à 64 Ko.

gjb
la source
Cette solution a fonctionné pour nous. Le symptôme dans les journaux était java.io.IOException: FULL. Assurez-vous d'ajouter le paramètre dans la addConnectorsection active que vous utilisez.
Tom Harrison Jr
1

Pour augmenter la limite de taille d'en-tête de demande côté Solr. si vous exécutez Solr sur Jetty, procédez comme suit:

Ouvrez le fichier \ server \ etc \ jetty.xml. Remplacer par

  • Enregistrez les modifications.
  • Redémarrez Solr et Sitecore XP.
SHIBIN
la source