8
votes

Nginx 502 mauvaise passerelle Bad Gateway uniquement dans Firefox

Je gère un site Web localement, tout le trafic est acheminé via Nginx, qui envoie ensuite des demandes à PHP Pages à Apache et sert des fichiers statiques. Fonctionne parfaitement en chrome, safari, c'est-à-dire, etc.

Cependant, chaque fois que j'ouvre le site Web de Firefox, j'obtiens l'erreur suivante: xxx

si je désactive le cache et Cookies, puis redémarrez Firefox, je suis capable de charger le site une ou deux fois avant que l'erreur ne revienne. J'ai essayé à la fois Firefox 3.6 et 3.5 et j'ai tous deux le même problème.

Voici ce que ma maladie Nginx config a l'air: xxx

et voici Les erreurs que Firefox génèrent dans mon fichier error.log: xxx

Je suis complètement à perte pour laquelle un navigateur provoquerait une erreur de serveur. Quelqu'un peut-il aider?


0 commentaires

4 Réponses :


12
votes

J'ai semblé avoir trouvé un travail autour de celui-ci fixé mon problème. Après quelques recherches de Google supplémentaires, j'ai ajouté les lignes suivantes à ma configuration Nginx: xxx

Cependant, je ne sais toujours pas pourquoi cela a fonctionné et pourquoi seul Firefox semblait avoir des problèmes. Si quelqu'un peut éclairer cela, ou offrir une meilleure solution, ce serait très apprécié!


0 commentaires

5
votes

Si vous avez FirephP Désactivez-le. Les gros en-têtes provoquent des problèmes lors de la communication Nginx avec PHP.


0 commentaires

0
votes

ouvrir /etc/nginx/nginx.conf et Ajoutez les lignes suivantes dans la section HTTP:

fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;


0 commentaires

3
votes

L'augmentation de la taille de vos tampons de proxy résout ce problème. Firefox permet à de grands biscuits (jusqu'à 4k chacun) qui sont attachés à chaque demande. La configuration par défaut Nginx a de petits tampons (seulement 4k). Si votre trafic utilise de gros cookies, vous verrez l'erreur "En amont Envoyé trop gros en-tête lors de la lecture d'en-tête de réponse" dans votre journal d'erreur NGinx et NGinx renvoie une erreur HTTP 502 sur le client. Ce qui s'est passé est Nginx a manqué d'espace tampon tout en analysant et à traiter la demande.

Pour résoudre ce problème, changez votre fichier nginx.conf

proxy_buffers 8 16k; proxy_buffer_size 32k;

-Or-

fastcgi_buffers 8 16k; fastcgi_buffer_size 32k;


1 commentaires

fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; a fait le tour pour moi