需要在同一S3存储桶中与主站点一起托管博客

时间:2018-09-05 07:03:50

标签: reactjs amazon-s3 routes jekyll web-hosting

我们有一个通过S3存储桶提供服务的主要网站(位于React中)。由于出于搜索引擎优化的目的,我们还需要从同一域(即mainsite.com/blog)中提供博客(位于jekyll中),因此我们已将博客文件包含在同一S3存储桶中的一个单独的文件夹blog中。 现在,在主站点中,我们添加了一个锚标记来将用户定向到博客。

<a className="ml-nav-item" href="blog/index.html" target="_blank" rel="noopener noreferrer">
                   Blog
                 </a>

但是,不是在博客文件夹中加载index.html文件,而是在主站点中加载相同的index.html。 如果我们直接尝试访问mainsite.com/blog,则加载不会有任何问题。问题是当尝试从主站点访问博客时。 我们没有使用任何路由器。

我该如何解决这种情况?

1 个答案:

答案 0 :(得分:0)

在您的问题中,它也可以自行回答。因为对于blog / index.html没有路由。当请求通过您的第一页达到S3存储桶级别时,它将尝试查找路由。而且它可能无法识别blog / index.html,因此它会重定向到您的主站点index.html页面。我想您已将错误页面作为index.html。我的意思是,在配置静态虚拟主机时,您将错误页面指定为index.html。

要解决此问题,您可以尝试提供blog / index.html href的上下文路径。

相关问题