在 GitHub 页面上托管下一个应用程序时,js 和 css 未加载
js and css not loading when hosting next application on GitHub pages
Next.js 在 _next 文件夹中构建所有静态资产,但 Github 页面不需要提供这些文件。我是静态资源404
示例回购:https://github.com/ajaymathur/ajaymathur.github.io
master 分支托管,dev 分支用于开发。
而且我猜想 github 页面没有承载以 - 开头的路径。我该如何解决这个问题?
Add a .nojekyll file 在包含 _next 文件夹的文件夹中。
这会禁用 Jekyll 处理并让 _next 文件夹(包含下划线)复制到最终网站。
我的 _next 文件夹在我的存储库的根目录中,所以我在根目录中添加了一个 .nojekyll 文件。
仅添加 .nojekyll
文件对我来说还不够。我不得不更改构建命令以在 导出到静态 HTML/CSS/JS 之后添加文件 像这样
"scripts": {
...
"static": "next build && next export && touch ./out/.nojekyll && echo 'www.mywebsite.com' > ./out/CNAME",
...
},
我还使用 gh-pages
将文件从 out
文件夹复制到分支 Github 将提供页面,默认情况下 .nojekyll
文件未被复制超过。这可以通过将 -t
选项设置为 true
来规避
"scripts": {
...
"deploy": "gh-pages -d out -t true"
...
},
进行这些更改后,npm run static && npm run deploy
应该可以满足您的需求。
Next.js 在 _next 文件夹中构建所有静态资产,但 Github 页面不需要提供这些文件。我是静态资源404
示例回购:https://github.com/ajaymathur/ajaymathur.github.io master 分支托管,dev 分支用于开发。
而且我猜想 github 页面没有承载以 - 开头的路径。我该如何解决这个问题?
Add a .nojekyll file 在包含 _next 文件夹的文件夹中。
这会禁用 Jekyll 处理并让 _next 文件夹(包含下划线)复制到最终网站。
我的 _next 文件夹在我的存储库的根目录中,所以我在根目录中添加了一个 .nojekyll 文件。
仅添加 .nojekyll
文件对我来说还不够。我不得不更改构建命令以在 导出到静态 HTML/CSS/JS 之后添加文件 像这样
"scripts": {
...
"static": "next build && next export && touch ./out/.nojekyll && echo 'www.mywebsite.com' > ./out/CNAME",
...
},
我还使用 gh-pages
将文件从 out
文件夹复制到分支 Github 将提供页面,默认情况下 .nojekyll
文件未被复制超过。这可以通过将 -t
选项设置为 true
"scripts": {
...
"deploy": "gh-pages -d out -t true"
...
},
进行这些更改后,npm run static && npm run deploy
应该可以满足您的需求。