问题描述
我刚接触盖茨比(Gatsby),刚刚开始阅读该网站的教程here。但是,我在运行gatsby develop
命令时遇到了一些麻烦,因为它会引发错误并仅显示此消息,而无其他显示:
Looks like develop for this site is already running,can you visit http://://localhost:8000 ? If it is not,try again in five seconds!
当我单击http://:// localhost:8000时,页面仅显示localhost拒绝连接。
下面是gatsby info -C
的输出:
System:
OS: macOS High Sierra 10.13.6
cpu: (4) x64 Intel(R) Core(TM) i5-2415M cpu @ 2.30GHz
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 14.4.0 - ~/.nvm/versions/node/v14.4.0/bin/node
npm: 6.14.5 - ~/.nvm/versions/node/v14.4.0/bin/npm
Languages:
Python: 2.7.14 - /usr/local/bin/python
browsers:
Chrome: 85.0.4183.102
Safari: 11.1.2
npmPackages:
gatsby: ^2.24.54 => 2.24.54
npmGlobalPackages:
gatsby-cli: 2.12.94
我也尝试过卸载和安装gatsby-cli,但是问题仍然存在。还使用lsof -i TCP:8000
检查端口8000上是否正在运行任何东西,但是什么都没发生。
如果有人可以弄清问题的根源,我将不胜感激!
PS:我尝试运行gatsby build
和gatsby serve
,但没有遇到任何问题。
解决方法
这是因为OS firewall的端口。您可以通过将端口添加到默认的运行Gatsby的命令(在package.json
中)来轻松修复它:
gatsby develop -p 8001
请注意-p
标志,正如您在the documentation中看到的那样,它将更改Gatsby的运行端口。当然,您可以为任何所需的(和未使用的)端口更改8001
。更改它不会影响Gatsby项目,因为它将使GraphQL游乐场重新适应它。
您很有可能必须打开firewall上的端口8000
。
在OSX上,这应该是pfctl
和/etc/pf.conf
。