加载网站时 Gatsby 套接字和 commons.js 错误
Gatsby socket and commons.js error when loading website
我遵循了这个有用的答案: 在 git 上加载了一个演示 Gatsby 项目。
但我收到以下错误:
localhost/:1
GET http://localhost:9000/socket.io/socket.io.js net::ERR_ABORTED 404 (Not Found)
(index):5
GET http://localhost:9000/commons.js net::ERR_ABORTED 404 (Not Found)
这就是我所做的
git clone https://github.com/MunifTanjim/gatsby-theme-dox
cd gatsby-theme-dox
npm install #or yarn install
cd demo
gatsby develop #to build the site in development mode
gatsby build && gatsby serve #to build the site in production mode
然后我在 demo/public
目录中添加了一个 404.html
页面,因为我在 gatsby serve
上遇到错误
但是现在,我得到的只是一个空白网站,其中包含我上面指出的错误。
我是 Gatsby 的初学者,我想在我的本地机器上获得这个演示 运行。
谢谢
Then I added a 404.html
page to the demo/public
directory since
/public
文件夹是在每次构建时从源 (/src
) 文件夹中的代码自动生成的文件夹。您不能将代码放在那里,否则,在每次构建中,它都会丢失。看看 docs:
/public
Automatically generated. The output of the build process will
be exposed inside this folder. Should be added to the .gitignore
file
if not added already.
如果您想创建自定义 404 页面,您可以通过 src/pages
.
中的 creating a 404.js
文件创建一个
关于您的主要问题,输出显示 localhost:9000
(端口 9000)这一事实表明您使用的是 gatsby build
,而不是 gatsby develop
(否则端口将是 8000 ).使用第一个 (gatsby build
) 您需要重建整个站点才能看到更改,而 运行 gatsby develop
您将立即看到您所做的更改(除非您更改数据源) 因为 hot reload feature.
出现您的问题是因为没有 socket.io.js
文件,因此会抛出 404 错误(未找到)。
我建议:
- 刷新缓存 运行
gatsby clean
- 确保
yarn install
或 npm install
完成且没有错误(所有依赖项安装正确)
- 运行盖茨比开发
- 进行一些“实时”更改,一旦您觉得足够舒服,就可以继续执行以下命令。
- 运行 再一次
gatsby build
- 通过
gatsby serve
为网站提供服务(这将使您的网站在 localhost:9000
下本地运行)
可以在此 GitHub thread 中找到更多建议。
正如我在 , read the gatsby-cli
docs 中指出的那样,我建议您了解每个命令中您在做什么。
我遵循了这个有用的答案:
但我收到以下错误:
localhost/:1
GET http://localhost:9000/socket.io/socket.io.js net::ERR_ABORTED 404 (Not Found)
(index):5
GET http://localhost:9000/commons.js net::ERR_ABORTED 404 (Not Found)
这就是我所做的
git clone https://github.com/MunifTanjim/gatsby-theme-dox
cd gatsby-theme-dox
npm install #or yarn install
cd demo
gatsby develop #to build the site in development mode
gatsby build && gatsby serve #to build the site in production mode
然后我在 demo/public
目录中添加了一个 404.html
页面,因为我在 gatsby serve
上遇到错误
但是现在,我得到的只是一个空白网站,其中包含我上面指出的错误。
我是 Gatsby 的初学者,我想在我的本地机器上获得这个演示 运行。
谢谢
Then I added a
404.html
page to thedemo/public
directory since
/public
文件夹是在每次构建时从源 (/src
) 文件夹中的代码自动生成的文件夹。您不能将代码放在那里,否则,在每次构建中,它都会丢失。看看 docs:
/public
Automatically generated. The output of the build process will be exposed inside this folder. Should be added to the.gitignore
file if not added already.
如果您想创建自定义 404 页面,您可以通过 src/pages
.
404.js
文件创建一个
关于您的主要问题,输出显示 localhost:9000
(端口 9000)这一事实表明您使用的是 gatsby build
,而不是 gatsby develop
(否则端口将是 8000 ).使用第一个 (gatsby build
) 您需要重建整个站点才能看到更改,而 运行 gatsby develop
您将立即看到您所做的更改(除非您更改数据源) 因为 hot reload feature.
出现您的问题是因为没有 socket.io.js
文件,因此会抛出 404 错误(未找到)。
我建议:
- 刷新缓存 运行
gatsby clean
- 确保
yarn install
或npm install
完成且没有错误(所有依赖项安装正确) - 运行盖茨比开发
- 进行一些“实时”更改,一旦您觉得足够舒服,就可以继续执行以下命令。
- 运行 再一次
gatsby build
- 通过
gatsby serve
为网站提供服务(这将使您的网站在localhost:9000
下本地运行)
可以在此 GitHub thread 中找到更多建议。
正如我在 gatsby-cli
docs 中指出的那样,我建议您了解每个命令中您在做什么。