66 votes

Impossible d'accéder au site sur une instance EC2 via une adresse IP publique

J'ai fait des expériences avec EC2 pour un couple de jours et ont été cogner ma tête contre même simplement être en mesure d'accéder à l'exemple de site que j'ai hébergé. La pile est de Rails 3.1.3 avec de Fines et de Nginx.

J'ai essayé plusieurs configurations différentes et finalement terminé la course à pied la Nginx automatique de script d'installation, qui ne retourner une page web quand je fais une boucle http://ec2-107-20-143-179.compute-1.amazonaws.com/. Cependant, quand je pointe mon navigateur, il se bloque toujours avant de dire que la page ne peut pas être trouvé.

J'ai attribué une adresse IP Élastique, et j'ai activé l'accès HTTP via le port 80.

Je n'ai pas beaucoup d'expérience avec le sysadmin côté et je suis fondamentalement perplexe à ce point. Tout conseil serait grandement apprécié.

126voto

Deleteman Points 3879

Avez-vous activé le port http à tous les ips? Cela se ferait en allant à:

EC2 -> Groupe de sécurité -> Par défaut (ou votre client) -> Entrant

Et ensuite, créez une nouvelle règle pour HTTP et en tant que source, vous devez attribuer: 0.0.0.0/0

Ça devrait le faire.

25voto

Octopus Points 1289

J'étais ici plus tôt à la recherche d'une solution à un problème similaire que je rencontrais. Dans mon cas, il s'est avéré que l'instance EC2 avait également son propre pare-feu en plus du groupe de sécurité EC2. La commande 'system-config-firewall' m'a laissé entrer pour ouvrir les ports. Les ports 80 (HTTP) et 3306 (MySQL) n'étaient pas ouverts par défaut. 22 (SSH) était ouvert. Je devais aussi faire 'yum install system-config-firewall'.

Pour résumer, ma solution était:

 > yum install system-config-firewall
> system-config-firewall
 

21voto

user156439 Points 105

Cette réponse est destinée aux débutants qui n'ont aucune idée de ce qu'ils font avec une instance ec2.

J'avais le même problème et j'ai essayé tous les correctifs du groupe de sécurité en vain.

En fin de compte, je devais activer mon serveur à partir de la ligne de commande.

 sudo service httpd start 
 

Parfois, il fait noir, non pas à cause d'un fusible, mais parce que vous n'avez pas appuyé sur l'interrupteur.

7voto

jbmyid Points 862

J'étais également aux prises avec le même problème, j'avais également créé un groupe de sécurité, mais ne m'appliquais pas à l'instance. Il suffit de créer une nouvelle règle pour http. Et appliquez à partir d'une instance de clic droit, choisissez le groupe de sécurité et affectez-le.

3voto

David Points 631

La réponse d'Octopus était la bonne pour moi, à l'exception d'une machine Windows. J'avais besoin d'aller au pare-feu Windows, bloquait tout le trafic hors de la machine virtuelle s'il ne correspondait pas à une règle. Le port 80 n'étant pas activé dans une règle, je devais simplement en ajouter un.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X