您有两个选择:

您有两个选择:

目前我的博客托管在 blog.domain.com,托管在 LAMP 堆栈上并运行 wordpress。这是我将 blog.domain.com DNS 记录指向的位置。

我还在 nginx 服务器上托管了 domain.com,并将运行我的电子商务应用程序 (magento)。domain.com dns a 记录指向此处。出于安全原因,我们将两个应用程序放在单独的服务器上。

出于 SEO 原因,我想将博客移至 domain.com/blog。我所做的是使用 nginx 设置反向代理作为 apache/wordpress 后端的前端缓存。所以这很有效,我注意到缓存确实改善了我的加载时间。

现在我需要将所有 blog.domain.com 请求重定向到 domain.com/blog。但最好的方法是什么?我是否应该将 blog.domain.com 的 DNS A 记录更改为我的 nginx 服务器,然后让 nginx 处理重写/重定向?还是应该将重写放在 Apache 服务器上?我只能访问 Apache 服务器上的 .htaccess 文件。

我从来没有这样做过,所以我想问问社区,对于这种情况,最好的方法是什么。

谢谢

答案1

您有两个选择:

选项 1:保持 DNS 原样。

  • 在 Apache 上设置重定向。
  • 确保排除你的反向代理,以便它不会被重定向到其自身。
  • 优点是比较省力。

选项 2:移动物品。

  • 创建额外的 A 记录,blog-backend.example.com指向实际托管博客的服务器(Apache)
  • 更改反向代理设置以指向blog-backend.example.com
  • 在 example.com 上配置 Nginx 以处理blog.example.com并将其重定向到example.com/blog
  • 更改 的 DNS blog.example.com,使其指向与example.com.(Nginx)相同的服务器
  • 更改防火墙blog-backend(apache)以便它只接受来自 Nginx 的请求。
  • 仍然需要保留blog-backend服务器,这样博客将与电子商务网站隔离。
  • 付出更多努力,却没有真正的回报

相关内容