La raison du 502 sur le serveur est que le délai de connexion a expiré. Nous avons envoyé une requête au serveur. Parce que le serveur a actuellement trop de connexions, le serveur ne peut pas donner de réponse normale. réponse, ce qui entraîne une telle erreur.
Donc, si la concurrence de votre serveur est très grande, vous pouvez d'abord ajouter plus de machines, puis optimiser comme suit pour obtenir de meilleurs résultats, mais si vous avez une petite concurrence mais obtenez 502, cela peut généralement être ; attribué à un problème de configuration, problème de délai d'attente du script.
1. Le nombre de processus php-fpm n'est pas suffisant
Utilisez netstat -napo | nombre de processus fastcgi. Si le nombre est proche de la limite supérieure configurée dans conf, vous devez augmenter le nombre de processus.
Mais vous ne pouvez pas l'augmenter à l'infini. Vous pouvez ajuster le nombre de sous-processus php-fpm à 100 ou plus selon la mémoire du serveur. Sur un serveur avec 4G de mémoire, 200 suffisent.
2. Augmentez le nombre de fichiers ouverts par le noyau Linux
Vous pouvez utiliser ces commandes (doit être le compte root)
echo 'ulimit -HSn 65536'>> /etc/profile echo 'ulimit -HSn 65536'>> /etc/rc.local source /etc/profile
3. Délai d'exécution du script
Si le script attend longtemps sans revenir pour une raison quelconque, ce qui entraîne le non-traitement des nouvelles demandes, vous pouvez ajuster de manière appropriée la configuration suivante.
nginx.conf contient principalement les éléments suivants :
fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300;
php-fpm.conf S'il contient les éléments suivants :
request_terminate_timeout =10s
4 Le paramètre de cache est relativement petit.
Modifier ou ajouter une configuration à nginx.conf
proxy_buffer_size 64k; proxy_buffers 512k; proxy_busy_buffers_size 128k;
Tutoriel recommandé : Tutoriel vidéo PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!