是否可以将 AWS 用作网络主机?
Posted
技术标签:
【中文标题】是否可以将 AWS 用作网络主机?【英文标题】:Is it possible to use AWS as a web host? 【发布时间】:2011-01-07 23:23:15 【问题描述】:是否可以使用 AWS 加载/托管整个网站?或者它只是一个可以加载网站特定部分的服务 - 例如图像等。显然,我想使用我自己的域。如果可以使用,有什么限制吗?
这是 AWS 链接,用于上下文:
http://aws.amazon.com/s3/
【问题讨论】:
我投票结束这个问题,因为它不是一个编程问题,而且它在 Stack Overflow 上是题外话。将来,有关您网站的非编程问题应通过Webmasters 提出。 【参考方案1】:AWS = Amazon Web Services = 一套不同的网络服务。
S3(您链接到的)是一个对象存储。您不能在 S3 上托管 Web 服务。
EC2 也在 AWS 的保护伞下,是虚拟化计算空间。您可以在 EC2 上托管 Web 服务。这就像在某处的机架中拥有一台服务器,只是当您关闭一个实例时,它就永远消失了。但是使用类似于虚拟化硬盘的 EBS 可以防止您在 EC2 实例关闭时丢失数据。
见http://aws.amazon.com/ec2/和http://aws.amazon.com/ebs/
【讨论】:
EC2 实例何时关闭? 所以,要完全清楚...您可以将域指向 EC2 并让它在云中以某种方式解析? @Oscar Reyes:当您选择关闭实例时,该实例将被关闭。 @unknown (google):是的,您的 EC2 实例将拥有一个公开可用的 IP 地址。你只需要确保它打开了 80 端口。 哦..根据你的描述,我一开始还以为是突然发生的事情。【参考方案2】:编辑:2016 年 8 月 12 日,他们有一个专门的部分介绍如何开始在 AWS 上托管网站。请注意,S3 仅允许静态网站,但 AWS 提供 SDK,以防您想在您的实例上运行 php、ASP.NET 等。有关详细信息,请参阅链接。
http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html https://aws.amazon.com/websites/
猜猜我刚刚在 Google 搜索 AWS 上的托管时发现了什么?! AWS 的一篇博文指出您可以(现在)在 S3 上托管一个网站。 (有趣的是,*** 和 AWS 帖子在 SERP 中紧挨着!)
http://aws.typepad.com/aws/2011/02/host-your-static-website-on-amazon-s3.html
【讨论】:
【参考方案3】:正如@danben 所说,S3 和 EC2 之间存在差异。
对于希望在亚马逊上托管网站的人来说,可能会感兴趣的一件事是亚马逊几个月前开始提供free tier。连同BitNami Cloud Hosting 之类的服务(免责声明,我帮助设计了它,所以它有点像我的宝贝 :) 意味着您可以在几分钟内将您的网站放在亚马逊云上,基本上是 0 美元。您仍然需要向亚马逊提供信用卡信息,但如果您保持在他们的免费级别范围内,则不会收取任何费用。
还有一点需要考虑的是,在撰写本文时(2011 年 7 月),亚马逊将您限制为每台服务器只能使用一个 IP 地址。如果您需要托管多个域,则可能需要使用基于名称的虚拟主机或使用其 Elastic Load Balancer 的一些技巧(这将花费您更多)。但总而言之,如果您有点技术并且想要比共享主机提供的更多控制权,那么值得一试
【讨论】:
【参考方案4】:是的,完全可以通过两种方式在 AWS 上托管网站:
1.) Easy - S3(简单存储解决方案)是一种桶存储解决方案,可让您提供静态内容,例如图像,但最近已升级,因此您可以使用它来托管平面 .html 文件,并且您的站点将由默认的 Apache 安装提供服务,您的配置很少(但也很少控制)。
2.) 更复杂 - 您可以使用 EC2(弹性计算云)并创建一个虚拟 Linux 实例,然后在其上安装 Apache/nginx(或其他),让您完全控制服务任何/任何您想要的。您可以使用 SecurityGroups 来启用/禁用单个机器或它们的组的端口。
@danben 您的 EC2 实例默认没有固定的公共 IP。亚马逊让您使用 CNAME - 而不是 A 记录,因为您的 IP 可能会在负载下发生变化。您必须为 ElasticIP 付费才能为您的设置获得一致的公共 IP(或使用某种 DynDNS)
【讨论】:
【参考方案5】:在 reinvent 2018 年,AWS 推出了 Amplify 控制台,这是一项针对具有无服务器后端的单页面和静态应用程序的持续部署和托管服务。看看吧:http://console.amplify.aws
【讨论】:
【参考方案6】:是的!您可以轻松地在 AWS 上托管您的网站。 有两种方法;
-
使用原生 AWS - 这是一种棘手的方法,需要专业知识和一系列命令才能运行。您需要自行管理安全、DNS、SSL、服务器协议等。
Cloudways 等托管云平台 - 您只需单击几下即可轻松启动 AWS 服务器并托管您的网站。此外,您可以通过其直观的平台快速管理您的服务器协议、软件包、安全防火墙、DNS 等。
【讨论】:
以上是关于是否可以将 AWS 用作网络主机?的主要内容,如果未能解决你的问题,请参考以下文章
如何在不重新启动集群的情况下使用 Fargate 在 AWS EKS 内传播 DNS 主机名(网络更改)和/或角色更改?
如何让 AWS ELB 将实际主机名而不是 ELB 的主机名转发到目标组?