Maison > Article > Opération et maintenance > Comment résoudre rapidement l'impossibilité d'ouvrir un site Web exécuté sur une instance ECS
Le contenu de cet article explique comment dépanner rapidement les sites Web exécutés sur des instances ECS qui ne peuvent pas être ouvertes. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.
Dépannage rapide : le site Web exécuté sur l'instance ECS ne peut pas être ouvert
Le site Web exécuté sur l'instance Linux ne peut pas être ouvert
Ici, le système de démonstration est CentOS 6.8, veuillez choisir en fonction de votre situation réelle.
1. Dépannage du port 80 indisponible
Exécutez la commande netstat -an grep 80 pour vérifier si le port TCP 80 est surveillé. Si l'un des résultats suivants est renvoyé, cela signifie que le service Web du port TCP 80 a été démarré :
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN # Écoute du réseau entier
tcp 0 0 127.0.0.1:80 0.0.0.0:* LISTEN # Surveillance locale
Parmi elles, la surveillance locale empêchera le réseau externe d'accéder au service Web. Seule cette machine peut y accéder. Veuillez vous référer à Nginx, Tomcat et IIS pour modifier la surveillance du port. La méthode d'adresse est remplacée par une surveillance à l'échelle du réseau.
Lorsque la première étape échoue :
Vérifiez si le groupe de sécurité de l'instance autorise le port 80. Voir Ajout de règles de groupe de sécurité.
Vérifiez si l'instance iptables autorise le port 80.
Utilisez telnet et traceroute pour suivre la connexion et la déconnexion du port 80. Consultez les instructions pour tester les liens lorsque les paquets ping sont perdus ou indisponibles.
Vérifiez si la bande passante du serveur cloud est pleine. Veuillez vous référer à l'analyse et aux solutions à la bande passante complète anormale du serveur cloud ECS Linux.
2. Dépannez si le service Web est indisponible
Utilisez le terminal de gestion pour vous connecter à l'instance.
Affichez le journal du service Web, tel que le chemin /usr/local/var/log/nginx/ pour stocker le journal du service CentOS 6.8 Nginx.
Utilisez top pour vérifier l'état d'exécution de l'instance et vérifier s'il existe des processus anormaux.
Vérifiez les informations de surveillance de l'instance sur la console pour voir si la bande passante de l'instance est pleine. Si tel est le cas, vous pouvez essayer de mettre à niveau la bande passante de l'instance.
Vérifiez si l'instance manque de CPU/mémoire. Consultez les idées de dépannage pour une utilisation élevée du processeur dans les systèmes Linux ECS de serveur cloud.
Vérifiez s'il y a trop de connexions TCP sur le port 80 de l'instance.
Utilisez netstat -anp |grep tcp |wc -l pour compter le nombre de connexions TCP.
Comparez la valeur maximale de net.ipv4.tcp_max_tw_buckets dans le fichier de configuration /etc/sysctl.conf pour voir s'il y a un excès. S'il dépasse :
Exécutez vi /etc/sysctl.conf pour éditer le fichier et interroger le paramètre net.ipv4.tcp_max_tw_buckets. S’il s’avère que l’utilisation de la connexion est élevée, il est facile de dépasser la limite.
Augmentez le paramètre net.ipv4.tcp_max_tw_buckets pour étendre la limite.
Entrez la commande sysctl -p pour que la configuration prenne effet.
Impossible d'ouvrir un site Web exécuté sur une instance Windows
Le système de démonstration ici est Windows Server 2008, veuillez choisir en fonction de votre situation réelle.
1. Dépannage du port 80 indisponible
Exécutez la commande netstat -ano | findstr :80 pour vérifier si TCP 80 est surveillé. Si l'un des résultats suivants est renvoyé, cela signifie que le service Web du port TCP 80 a été démarré.
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1172 # Indique une surveillance à l'échelle du réseau
TCP 127.0.0.1:80 0.0.0.0:0 LISTENING 1172 # Indique une surveillance locale
Parmi eux, la surveillance locale empêchera le réseau externe d'accéder au service Web. Seule la machine locale peut y accéder. Vous pouvez exécuter netsh http delete iplisten ipaddress= 127.0.0.1:80 pour le changer en full. surveillance du réseau.
Lorsque la première étape échoue :
Vérifiez si le groupe de sécurité de l'instance autorise le port 80. Voir Ajout de règles de groupe de sécurité.
Vérifiez si le pare-feu de l'instance autorise le port 80. Découvrez comment le pare-feu Windows restreint l'accès aux ports/IP/applications et comment configurer les exceptions.
Utilisez telnet et tracert pour suivre la connexion et la déconnexion du port 80. Consultez les instructions pour tester les liens lorsque les paquets ping sont perdus ou indisponibles.
Vérifiez si la bande passante du serveur cloud est pleine. Consultez Bande passante de l’instance Windows et dépannage du processeur plein ou élevé.
2. Dépannez si le service Web est indisponible
Utilisez le terminal de gestion pour vous connecter à l'instance.
Affichez le journal du service Web. Par exemple, l'emplacement du journal du service Windows Server 2008 IIS est : %SystemDrive%inetpublogsLogFilesW3SVC4.
Vérifiez l'état d'exécution de l'instance via le Gestionnaire des tâches pour voir s'il y a des processus anormaux.
Vérifiez les informations de surveillance de l'instance sur la console pour voir si la bande passante de l'instance est pleine. Si tel est le cas, vous pouvez essayer de mettre à niveau la bande passante de l'instance.
Vérifiez si le processeur et la mémoire de l'instance sont épuisés. Consultez le dépannage de la bande passante de l’instance Windows et l’utilisation complète ou élevée du processeur, ou les recommandations de dépannage et d’outils pour l’utilisation élevée du processeur de l’instance Windows du serveur cloud.
Vérifiez s'il y a trop de connexions TCP sur le port 80 de l'instance.
Exécutez la commande suivante et comptez le nombre de connexions TCP :
netstat -n |find /i "time_wait" /c netstat -n |find /i "close_wait" /c netstat -n |find /i "established" /c
Lorsque le nombre de connexions TCP comptées est trop élevé, ajustez TcpTimedWaitDelay à 30s, sa valeur par défaut est de 4 minutes ( 240s) :
Ouvrez CMD et exécutez la commande regedit.
Recherchez HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Services > Paramètres TCPIP.
S'il n'y a pas de paramètre TcpTimedWaitDelay :
Cliquez avec le bouton droit sur Paramètre > Nouvelle valeur DWORD (32 bits).
Entrez TcpTimedWaitDelay et appuyez sur Entrée pour confirmer.
Cliquez avec le bouton droit sur TcpTimedWaitDelay, cliquez sur Modifier, cochez Decimal, entrez 30 comme données numériques et cliquez sur OK.
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!