Web Hosting on Amazon AWS (PHP + MySQL)

Ans*_*imu 29 php amazon-s3 amazon-ec2 amazon-web-services

I am totally confused on how to host a Dynamic website created using PHP and MySQL in Amazon Cloud.

I went through Amazon S3 and I hosted a static website there!

Then I tried Amazon EC2 and I learned some aspects about the concept of VPC. I thought that the dynamic websites are hosting in Amazon Cloud using EC2. I followed some steps and they taught me how to launch a website using Drupal (But, I didn't want that !! )

No other tutorials on EC2 to deploy my web application was not found.

Then I found AWS Elastic Beanstalk, I uploaded a simple PHP document and I can see that deployed successfully.

But Still, I am not satisfied. Because, I don't know which is the correct way to deploy my PHP application.

So can anyone direct me on Deploying a PHP MySQL Application in AWS ?

小智 26

取决于您的需求.Elastic Beanstalk可能是许多应用程序的一个很好的选择,但我选择EC2作为我的应用程序的后端(使用PHP,MySQLS3进行存储).

快速启动和运行的步骤:

  1. 登录AWS Mangement Console并启动一个新的EC实例(Windows server 2012 R2 Base> t2.micro应该足够开始!)

  2. 在步骤"6.配置安全组",添加至少HTTP,HTTPSRDP的规则(这样您就可以通过远程桌面连接)

  3. 通过远程桌面连接到您的新实例并安装一个不错的浏览器(在IE的安全设置中启用文件下载并下载ChromeFirefox)

  4. 打开Windows防火墙,并在AWS管理控制台中为您在实例的安全组中打开的相同端口添加规则.(右键单击"入站规则",然后选择"新规则...")

  5. 下载并安装XAMPP(我把它放在C:\ xampp中)

  6. 打开XAMPP控制面板并安装Apache和MySQL作为服务(因此它们将在您的实例启动时自动启动); 确保一切都已启动.

  7. 现在把你的文件放在C:\ xampp\htdocs \中,你准备好了!

奖金步骤:

  • 设置Filezilla FTP Server(并在实例的安全组和Windows防火墙中打开所需的端口),这样您就可以上载/下载文件而无需通过远程桌面.

  • 获取弹性IP并将其分配给您的实例,因此它的IP地址永远不会更改.

  • 获取SSL证书,以便您可以使用HTTPS

  • 上述步骤非常适合开发/暂存环境。但是,我不建议在生产环境中使用 XAMPP,特别是如果您计划扩展应用程序。XAMPP/WAMP/MAMP 最适合开发或静态站点托管 https://www.reddit.com/r/webdev/comments/3n5a5a/why_is_xampp_or_similar_not_property_for_a/ (2认同)

Seb*_*Gra 5

答案取决于您期望的负载以及处理所有管理任务所需的资源。

如果您预计负载较重或可变负载,那么不在 EC2 上部署生产 PHP + MySQL 应用程序的原因有很多。

以下是部署到 Elastic Beanstalk 而不是手动配置的 EC2 的一些好处:

  • 您可以获得每个部署的版本控制。

  • 如果您需要更多/更少的实例来处理新负载,您可以自动向上或向下扩展。

  • 您可以在 EC2s 实例前面获得一个负载均衡器,其中包含一系列开箱即用的“推荐”配置。

关于 MySQL,如果您选择 Amazon RDS 实例,则可以轻松处理复制、监控和自动备份。您需要调整的许多配置现在都可以通过参数组获得。

另一方面,如果您想完全控制服务器上发生的一切(这意味着您有时间监视、备份和执行维护任务,这不是我的情况:),或者如果您不计划要获得大量流量,或者如果您想要更便宜的选项,您应该使用低成本的 EC2 实例。

根据我的经验,(在 AWS 上使用 10 个生产应用程序工作了 2 年之后,我是一个普通的 AWS 用户)几乎我在 RDS 和 EBS 上需要的所有自定义或更改我都能够对其进行调整并使其正常工作,所以我对选择 EBS+RDS 选项非常满意。