如何有效地将wordpress和AWS Amplify设置在一起



我需要一个由两部分组成的项目,用例似乎相对典型:

  • 一个AWS Amplify react项目,它有一些API端点和一个用react编写的漂亮仪表板
  • 一个有博客的wordpress网站,由不太专业的人维护

这一分离的原因是该公司的所有者熟悉wordpress,希望管理SEO并定期撰写博客文章。公司的主要目的(SaaS(是扩大项目。所有者很有可能会在wordpress网站上安装大量插件,并很可能导致它宕机,在这种情况下,放大项目必须保持功能。

理想情况下:

  • example.com->Wordpress
  • example.com/portal->Amplify项目

N.b我想使用子目录,而不是新的子域,因为我被告知这有助于SEO,因为它们将共享相同的页面排名。博客的目的主要是为了SEO和吸引人们到网站。

我所考虑的:

建立一个wordpress网站,托管在Apache服务器上(可能使用AWS lightsail,其中一个bitnami(,并在该Apache服务器上建立一个反向代理,指向放大项目。

我认为这种方法造成的问题:

  1. 可以从2个URL访问放大项目。放大应用程序通过example.com/portal直接AND;我如何阻止它通过放大URL向世界提供,并且只能通过反向代理(example.com/portal(提供
  2. 如果apache服务器出现故障,则无法再访问amplifier应用程序。放大项目现在依赖于一个EC2(或者可能是一个自动扩展组,但这意味着要添加一个负载均衡器和更高的成本(
  3. Amplify使用cloudfront作为CDN,通过代理将其全部路由,我们基本上失去了给我们带来的好处

其他选项:将放大放在顶部

放大使用它的反向代理功能向其他地方托管的wordpress页面发送请求。这样,如果wordpress崩溃,就会放大生活。我担心的是:

  1. Wordpress将从2个URL访问-我如何将其限制为只允许反向代理的URL(example.com(
  2. 我需要弄清楚如何在不是域名根的URL上运行,例如"example.com/service",并且需要获得域名根才能访问反向代理

什么是理想的答案,希望是其他答案:

  • 您会选择(或选择不同的(这些选项中的哪一个,这可能有助于最大限度地降低成本,同时保持AWS Amplify的弹性水平,为什么?请尝试以一种可能对其他人效仿的典型设置有用的方式回答

看看这个。基本上,AWS Amplify只是一个工具。您需要选择可以轻松地(通过其api(与headless wordpress集成的框架。

https://www.cloudways.com/blog/use-react-with-wordpress-to-create-headless-cms/

最新更新