使用自定义域发布到Github页面的ReactJS应用

sil*_*rlw 5 github github-pages reactjs

我有一个使用create-react-app创建的reactjs应用程序。我已经安装了gh-pages,并使用以下命令将其成功部署到github页面(项目页面):

gh-pages -d构建

但是,当我向github项目存储库添加自定义域时,我的应用程序无法加载js和css文件。我的浏览器正在寻找以下文件:

http://my.custom.domain/<repo name>/static/css/main.caaf9ea4.css
http://my.custom.domain/<repo name>/static/js/main.76fabd7f.js
Run Code Online (Sandbox Code Playgroud)

加载这些文件的正确链接应该是:

http://my.custom.domain/static/css/main.caaf9ea4.css
http://my.custom.domain/static/js/main.76fabd7f.js
Run Code Online (Sandbox Code Playgroud)

在GitHub存储库页面中,我将自定义域设置为“ my.custom.domain”(不带www的根域)。来源是gh-pages分支。

我的DNS设置是:

  • 一条记录@,值:192.30.252.153
  • 记录@值:192.30.252.154
  • CNAME记录,www,值:username.github.io

任何想法如何更改设置,以使回购名称不添加到域?

Ker*_*eon 4

确保您的 package.json 具有主页属性。例如

  "homepage": "https://<git-USER>.github.io/",
Run Code Online (Sandbox Code Playgroud)

这就是我刚刚对我的 cra 项目所做的事情。如果您想查看我的项目,只需查看开发分支即可。但是,我没有使用 gh-pages -d build。我刚刚自己构建了该项目并创建了分支 gh-pages 并将我构建的内容放入其中。不过应该是一样的。

  • 我终于解决了这个问题。由于我使用的是自定义域,因此我将主页属性设置为“https://my.custom.domain/”。我还无意中删除了 CNAME 文件。添加回 CNAME 文件后,该网站恢复正常。感谢@kerrygougeon 的帮助。 (3认同)