web-dev-qa-db-ja.com

Amazon AWSでのWebホスティング(PHP + MySQL)

Amazon CloudPHPとMySQLを使用して作成されたダイナミックWebサイトをホストする方法について完全に混乱しています。

私はAmazon S3を通過し、そこで静的なウェブサイトをホストしました!

それからAmazon EC2を試し、VPCの概念についていくつかの側面を学びました。ダイナミックWebサイトはEC2を使用してAmazon Cloudでホストしていると思いました。私はいくつかの手順を踏んで、Drupalを使用してWebサイトを起動する方法を教えてくれました(しかし、私はそれを望んでいませんでした!!)

WebアプリケーションをデプロイするためのEC2に関する他のチュートリアルは見つかりませんでした。

その後、AWS Elastic Beanstalkを見つけ、簡単なPHPドキュメントをアップロードしました。

それでも、私は満足していません。なぜなら、私がPHPアプリケーションをデプロイする正しい方法はどれなのかわかりません。

だから、誰でもPHP AWSでのMySQLアプリケーションのデプロイについて教えてくれますか?

29
BheeMa

ニーズに依存します。 Elastic Beanstalkは多くのアプリに適したオプションかもしれませんが、アプリのバックエンドにEC2を選択しました([〜#〜] php [〜#〜 ]MySQLおよびS3(ストレージ用)。

起動して実行するための簡単な手順:

  1. AWS Mangement Console にログインして、新しいECインスタンスを開始しますWindows server 2012 R2 Base> t2.microはスタートするには十分です!)

  2. ステップ "6。セキュリティグループの構成"で、少なくとも[〜#〜] http [〜#〜]のルールを追加します、[〜#〜] https [〜#〜]および[〜#〜] rdp [〜#〜](soリモートデスクトップ経由で接続できます)

  3. Remote Desktopを介して新しいインスタンスに接続し、適切なブラウザーをインストールします(IEのFile Downloadsを有効にしますSecurity Settingsおよびダウンロード- ChromeまたはFirefox

  4. Windows Firewallを開き、AWS Management Consoleのインスタンスのセキュリティグループで開いた同じポートのルールを追加します。 (「インバウンドルール」を右クリックして、「新しいルール…」を選択します)

  5. ダウンロードしてインストールします [〜#〜] xampp [〜#〜] (C:\ xamppに置きます)

  6. XAMPPコントロールパネルを開き、サービスとしてApacheとMySQLをインストールします(インスタンスが起動すると自動的に起動します)。すべてが起動していることを確認してください。

  7. ここで、ファイルをC:\ xampp\htdocs \に配置すると、準備は完了です。

ボーナスステップ:

  • Filezilla FTPサーバーをセットアップし(そしてインスタンスのセキュリティグループとWindowsファイアウォールの両方で必要なポートを開く)、リモートデスクトップを経由せずにファイルをアップロード/ダウンロードできるようにします。

  • Elastic IPを取得してインスタンスに割り当てると、IPアドレスは変更されません。

  • HTTPSを使用できるようにSSL証明書を取得します

26
col000r

答えは、予想される負荷と、すべての管理タスクを処理するために必要なリソースによって異なります。

重い負荷または変動負荷が予想される場合、プロダクションPHP + MySQLアプリケーションをEC2にデプロイしない理由はたくさんあります。

ここ は、手動で設定されたEC2の代わりにElastic Beanstalkにデプロイする利点の一部です。

  • 各展開のバージョン管理を取得します。

  • 新しい負荷を処理するためにより多く/より少ないインスタンスが必要な場合、自動的にスケールアップまたはスケールダウンできます。

  • すぐに使用できる「推奨」構成が多数用意されたEC2sインスタンスの前にロードバランサーを取得します。

MySQLについては、Amazon RDSインスタンスを選択すると、複製、監視、自動バックアップを非常に少ない労力で処理できます。 Tweakに必要な設定の多くは、パラメータグループを介して利用できるようになりました。

一方、サーバーで行われているすべてを完全に制御したい場合(つまり、メンテナンスタスクを監視、バックアップ、実行する時間がありますが、これは私の場合ではありません:)、または計画しない場合より多くのトラフィックを確保するには、またはより安価なオプションが必要な場合は、低コストのEC2インスタンスを使用する必要があります。

私の経験では、(10個の本番アプリケーションでAWSで2年間働いた後、私は通常のAWSユーザーです)RDSとEBSの両方で必要なほとんどすべてのカスタマイズまたは変更を調整して機能させることができました、そのため、EBS + RDSオプションの選択にかなり満足しています。

4
SebaGra

以下は、AWS Elastic Beanstalkを使用してアプリケーションを作成および更新するのに役立つ2つのリンクです。

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

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

0
Aamir Sarwar