web-dev-qa-db-de.com

Webhosting auf Amazon AWS (PHP + MySQL)

Ich bin total verwirrt, wie man eine dynamische Website hostet, die mit PHP und MySQL in Amazon Cloud erstellt wurde.

Ich habe Amazon S3 durchlaufen und dort eine statische Website gehostet!

Dann habe ich Amazon EC2 ausprobiert und einige Aspekte des VPC-Konzepts gelernt. Ich dachte, dass die dynamischen Websites mit EC2 in Amazon Cloud gehostet werden. Ich habe einige Schritte befolgt und sie haben mir gezeigt, wie man eine Website mit Drupal startet (aber das wollte ich nicht !!)

Es wurden keine anderen Tutorials zur Bereitstellung meiner Webanwendung in EC2 gefunden.

Dann fand ich AWS Elastic Beanstalk, ich habe ein einfaches PHP -Dokument hochgeladen, und ich kann sehen, dass es erfolgreich implementiert wurde.

Trotzdem bin ich nicht zufrieden. Ich weiß nicht, auf welche Weise ich meine Anwendung PHP richtig implementieren kann. 

Kann mir also jemand bei der Bereitstellung einer PHP MySQL-Anwendung in AWS helfen?

27
BBHeeMAA

Kommt auf deine Bedürfnisse an. Elastic Beanstalk mag für viele Apps eine gute Option sein, aber wählte EC2 für das Backend meiner App (mit PHP, MySQL und S3 zum Speichern). 

Schnelle Schritte zum Einstieg:

  1. Melden Sie sich an der AWS Mangement Console an und starten Sie eine neue EC-Instanz (Windows-Server 2012 R2-Basis> t2.micro sollte für einen Start ausreichend sein!)

  2. Fügen Sie im Schritt "6. Configure Security Group" Regeln für mindestens HTTP, HTTPS und RDP hinzu (damit Sie über Remote Desktop eine Verbindung herstellen können) )

  3. Stellen Sie über Remote Desktop eine Verbindung zu Ihrer neuen Instanz her und installieren Sie einen anständigen Browser (Aktivieren Sie Dateidownloads in den IE {Sicherheitseinstellungen, und laden Sie Chrome oder Feuerfuchs)

  4. Öffnen Sie die Windows-Firewall und fügen Sie Regeln für dieselben Ports hinzu, die Sie in der Sicherheitsgruppe Ihrer Instanz in der AWS Management Console geöffnet haben. (Klicken Sie mit der rechten Maustaste auf "Eingehende Regeln" und wählen Sie dann "Neue Regel…".) 

  5. Laden Sie herunter und installieren Sie XAMPP (ich habe es in C:\xampp gestellt)

  6. Öffnen Sie das XAMPP Control Panel und installieren Sie Apache und MySQL als Dienste (damit sie beim Starten Ihrer Instanz automatisch gestartet werden). Stellen Sie sicher, dass alles gestartet ist.

  7. Legen Sie Ihre Dateien jetzt unter C:\xampp\htdocs\ab und Sie können loslegen!

Bonusschritte:

  • Richten Sie den Filezilla-FTP-Server ein (und öffnen Sie die erforderlichen Ports in der Sicherheitsgruppe der Instanz und in der Windows-Firewall), sodass Sie Dateien hochladen/herunterladen können, ohne Remote Desktop zu verwenden.

  • Besorgen Sie sich eine Elastic IP und weisen Sie sie Ihrer Instanz zu, damit sich ihre IP-Adresse niemals ändert.

  • Holen Sie sich ein SSL-Zertifikat, damit Sie HTTPS verwenden können

25
col000r

Die Antwort hängt von der erwarteten Auslastung und den Ressourcen ab, die Sie zur Verwaltung aller Verwaltungsaufgaben benötigen.

Wenn Sie hohe oder variable Auslastungen erwarten, gibt es viele Gründe, warum Sie keine produktive PHP + MySQL-Anwendung auf einer EC2 bereitstellen. 

Hier sind einige der Vorteile der Bereitstellung auf Elastic Beanstalk anstelle eines manuell konfigurierten EC2:

  • Sie erhalten die Versionskontrolle für jede Bereitstellung.

  • Sie können automatisch vergrößern oder verkleinern, wenn Sie mehr oder weniger Instanzen benötigen, um mit der neuen Last umzugehen.

  • Sie erhalten vor Ihren EC2s-Instanzen einen Lastausgleich mit einer Reihe von "empfohlenen" Konfigurationen.

Wenn Sie sich für MySQL für eine Amazon RDS-Instanz entscheiden, können Sie Replikationen, Überwachungen und automatische Sicherungen mit relativ geringem Aufwand erledigen. Viele der Konfigurationen, die Sie für das Tweak benötigen, sind jetzt über Parametergruppen verfügbar.

Auf der anderen Seite, wenn Sie die vollständige Kontrolle über alles haben möchten, was auf Ihrem Server läuft (das bedeutet, Sie haben Zeit zum Überwachen, Sichern und Durchführen von Wartungsaufgaben Wenn Sie viel Verkehr haben oder die kostengünstigere Option verwenden möchten, sollten Sie sich für eine kostengünstige EC2-Instanz entscheiden.

Nach meiner Erfahrung (nach 2 Jahren Arbeit an AWS mit 10 Produktionsanwendungen bin ich ein regelmäßiger AWS-Benutzer) so ziemlich jede Anpassung oder Änderung, die ich für RDS und EBS benötigte Daher bin ich mit der Wahl der EBS + RDS-Option ziemlich zufrieden.

4
SebaGra

Nachfolgend sind zwei Links aufgeführt, die hilfreich beim Erstellen und Aktualisieren einer Anwendung mit AWS Elastic Beanstalk sind

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

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

0
Aamir Sarwar