web-dev-qa-db-fra.com

Hébergement Web sur Amazon AWS (PHP + MySQL)

Je ne comprends vraiment pas comment héberger un site Web dynamique créé à l'aide de PHP et de MySQL dans Amazon Cloud .

J'ai parcouru Amazon S3 et y ai hébergé un site Web statique!

Ensuite, j'ai essayé Amazon EC2 et j'ai appris certains aspects du concept de VPC. Je pensais que les sites Web dynamiques hébergent dans Amazon Cloud avec EC2. J'ai suivi quelques étapes et ils m'ont appris à lancer un site web en utilisant Drupal (Mais je ne voulais pas de ça !!)

Aucun autre tutoriel sur EC2 pour déployer mon application Web n'a été trouvé.

Ensuite, j'ai trouvé AWS Elastic Beanstalk , j'ai téléchargé un simple document PHP et je peux le voir déployé avec succès.

Mais encore, je ne suis pas satisfait. Parce que je ne sais pas quelle est la bonne façon de déployer mon application PHP. 

Alors, est-ce que quelqu'un peut me diriger sur le déploiement d'une application MySQL PHP dans AWS?

27
BBHeeMAA

Cela dépend de vos besoins. Elastic Beanstalk pourrait être une bonne option pour de nombreuses applications, mais j'ai choisi EC2 pour le backend de mon application (en utilisant PHP, MySQL et S3 pour le stockage). 

Étapes rapides pour vous mettre en marche:

  1. Connectez-vous à AWS Mangement Console et démarrez une nouvelle instance EC (Windows Server 2012 R2 Base> t2.micro devrait être suffisant pour commencer!)

  2. À l'étape "6. Configuration du groupe de sécurité", ajoutez des règles pour au moins HTTP, HTTPS et RDP (afin que vous puissiez vous connecter via Remote Desktop. )

  3. Connectez-vous à votre nouvelle instance via Remote Desktop et installez un navigateur approprié (Activez Téléchargements de fichiers dans Paramètres de sécurité de IE et téléchargez Chrome ou Firefox)

  4. Ouvrez le pare-feu Windows et ajoutez des règles pour les mêmes ports que ceux ouverts dans le groupe de sécurité de votre instance dans AWS Management Console. (Faites un clic droit sur «Règles entrantes», puis sélectionnez «Nouvelle règle…») 

  5. Téléchargez et installez XAMPP (je le mets dans C:\xampp)

  6. Ouvrez le panneau de configuration XAMPP et installez Apache et MySQL en tant que services (ils seront donc lancés automatiquement au lancement de votre instance); assurez-vous que tout est démarré.

  7. Maintenant, placez vos fichiers dans C:\xampp\htdocs\et le tour est joué!

Étapes bonus:

  • Configurez Filezilla FTP Server (et ouvrez les ports requis dans le groupe de sécurité de l'instance et le pare-feu Windows) afin de pouvoir télécharger des fichiers sans avoir à passer par Remote Desktop.

  • Obtenez une adresse IP Elastic et affectez-la à votre instance afin que son adresse IP ne change jamais.

  • Obtenez un certificat SSL pour pouvoir utiliser HTTPS.

25
col000r

La réponse dépend de la charge à laquelle vous vous attendez et des ressources dont vous disposez pour gérer toutes les tâches d'administration.

Si vous vous attendez à des charges lourdes ou variables, il y a de nombreuses raisons pour ne pas déployer une application de production PHP + MySQL sur un EC2. 

Ici quelques-uns des avantages du déploiement sur Elastic Beanstalk au lieu d’un EC2 configuré manuellement:

  • Vous obtenez le contrôle de version de chaque déploiement.

  • Vous pouvez augmenter ou réduire automatiquement votre charge si vous avez besoin de plus/moins d'instances pour gérer une nouvelle charge.

  • Vous obtenez un équilibreur de charge devant vos instances EC2 avec un ensemble de configurations prêtes à l'emploi "recommandées".

En ce qui concerne MySQL, si vous optez pour une instance Amazon RDS, vous pouvez gérer la réplication, la surveillance et les sauvegardes automatiques avec un minimum d'effort. Un grand nombre des configurations dont vous auriez besoin pour Tweak sont maintenant disponibles via des groupes de paramètres.

Par contre, si vous voulez avoir le plein contrôle de tout ce qui se passe sur votre serveur (cela signifie que vous avez le temps de surveiller, de sauvegarder et d’effectuer des tâches de maintenance, ce qui n’est pas mon cas :), ou si vous n’envisagez pas Pour avoir beaucoup de trafic, ou si vous voulez l’option la moins chère, vous devriez choisir une instance EC2 à faible coût.

D'après mon expérience (après 2 ans de travail sur AWS avec 10 applications de production, je suis en quelque sorte un utilisateur habituel d'AWS), à peu près toutes les personnalisations ou modifications dont j'avais besoin à la fois sur RDS et EBS, j'ai été en mesure de le modifier et de le faire fonctionner. Je suis donc assez satisfait de choisir l’option EBS + RDS.

4
SebaGra

Vous trouverez ci-dessous deux liens utiles pour créer et mettre à jour une application avec AWS Elastic Beanstalk.

https://aws.Amazon.com/getting-started/tutorials/launch-an-app/

https://aws.Amazon.com/getting-started/tutorials/update-an-app/

0
Aamir Sarwar