盖茨比网站显示其他github页面存储库的404页面

时间:2019-02-11 01:39:55

标签: javascript url-routing github-pages gatsby netlify

我正在使用Github Pages和Netlify托管我的网站。这是一个使用Gatsby的静态网站。我也在使用自定义域。对于主站点,一切正常。索引和所有其他页面按预期显示。

但是,我还有其他使用github页面的存储库,我设置为也使用我的域。单击链接打开项目页面时,它转到我的网站404页面。当我使用github页面的默认URL时,该项目的网站加载良好。

1 个答案:

答案 0 :(得分:0)

有一些方法可以解决此问题,但是要取决于您的用例和您要提供链接的方式。

子域解决方案

具有页面的GitHub页面子域

CNAME

mysub.example.com

在DNS中为CNAME名称输入一个mysub条目,并为其赋予一个YOUR-GITHUB-USERNAME.github.io值,用您在github上的用户名替换YOUR-GITHUB-USERNAME

重定向解决方案

在构建文件夹的根目录中包含一个_redirects文件,以供Netlify提供您要proxy使用的路径。

_redirects

/mysub/*  https://username.github.io/:splat  200!

注意 :在盖茨比,您将重定向放置在static/_redirects中。如果您在Gatsby项目中使用gatsby-plugin-netlify,则可以选择在该配置(see readme)中设置以上内容,但以上内容仍然兼容。