使用S3部署WordPress以在Elastic Beanstalk中使用

问题描述 投票:-3回答:2

我是AWS的新手,我在其EBS环境中运行代码。我想定期将代码部署到beanstalk环境,以便对我们所有正在运行的实例进行更新。

但是我的主网站上还有一个WordPress博客,与主网站代码分开。我已经设置了WordPress使用的RDS实例。但问题是,每次我将代码部署到我们的主beanstalk环境时,它都会覆盖我们在本地可用的WordPress文件。例如,如果某些作者在部署代码之前发布了新帖子,则会覆盖WordPress文件,删除新的帖子文件(图像和内容)。

所以我的问题是,我怎样才能将WordPress从我们的beanstalk环境中分离出来?我不想为WordPress创建一个单独的beanstalk环境。

有没有什么办法可以使用S3存储桶来托管WordPress文件,然后在我们为主站点运行的beanstalk环境中以某种方式使文件可用,而无需创建新环境?如果有一个选项,那么用户上传的动态文件会发生什么?它们会被WordPress保存在S3中吗?

php wordpress amazon-web-services amazon-s3 elastic-beanstalk
2个回答
0
投票

你绝对应该将WordPress与你的应用程序分开。它们是不同的系统,没有理由在同一主机上运行它们。

WordPress有一些扩展可以将WordPress网站发布为静态HTML,然后可以从Amazon S3存储桶托管。这使得网站只读,因此交互式功能将无法运行(例如搜索,电子商务),但对于普通的博客页面来说这很好。

如果这不合适,只需在Beanstalk环境之外的单独EC2实例上运行它。您甚至可以考虑使用Amazon Lightsail


0
投票

在我看来,主要问题是您没有使用属于wordpress + EBS安装的正确配置。

  1. 部署时,EBS会创建新的应用程序版本。
  2. 因此,您无法访问以前的应用程序版本中的任何内容,包括uploads文件夹
  3. 结束语,您需要从应用程序级别分离动态文件,同时保持数据库相同。
  4. 如何?使用已安装的EFS和/或S3。与Wordpress S3 offload plugin结合使用

我假设您正在使用不在主机实例上运行的RDS数据库。如果没有,绝对不推荐。我强烈建议遵循最佳实践step-by-step installation including files here.

© www.soinside.com 2019 - 2024. All rights reserved.