Next.js 在 _next 文件夹中构建所有静态资源,但 Github 页面不需要提供这些文件。我的静态资产是404。
示例存储库:https://github.com/ajaymathur/ajaymathur.github.io Master 分支用于托管,dev 分支用于开发。
我猜 github 页面没有托管以 - 开头的路径。我该如何解决这个问题?
这将禁用 Jekyll 处理并让 _next 文件夹(包含下划线)复制到最终网站。
仅添加
.nojekyll
文件对我来说还不够。我必须更改构建命令以添加文件after导出到静态 HTML/CSS/JS,如下所示
"scripts": {
...
"static": "next build && next export && touch ./out/.nojekyll && echo 'www.mywebsite.com' > ./out/CNAME",
...
},
我还使用
gh-pages
将文件从 out
文件夹复制到 Github Pages 将服务的分支,默认情况下,.nojekyll
文件未被复制。可以通过将 -t
选项设置为 true
来避免这种情况
"scripts": {
...
"deploy": "gh-pages -d out -t true"
...
},
完成这些更改后,
npm run static && npm run deploy
应该可以完成您想要的操作。