如何解决将MERN / Mongo Atlas应用程序部署到Heroku:“无法获取/”错误
我知道有很多关于此问题的帖子。我看到的一个常见修复是将Mongo Atlas上的白名单0.0.0.0/0授予Heroku访问数据库的权限。
我尝试过,并且在将白名单加入后我也尝试重新部署该应用程序,但这也不起作用。 坦白地说,距离部署任何东西已经有一段时间了,因此,如果我忘记了一些基本的知识,我深表歉意。
无论如何,我的流程:
- 使用以下终端cmds将应用程序部署到Heroku
heroku login
,
heroku git:remote -a app-name
,
git push heroku master
- 在Heroku上,打开应用程序
我的控制台出现以下错误:
app-name.herokuapp.com/:1 Failed to load resource: the server responded with a status of 404 (Not Found)
app-name.herokuapp.com/:1 Refused to load the image 'https://app-name.herokuapp.com/favicon.ico' because it violates the following Content Security Policy directive: "default-src 'none'". Note that 'img-src' was not explicitly set,so 'default-src' is used as a fallback.
app-name.herokuapp.com/:1 Failed to load resource: the server responded with a status of 404 (Not Found)
Heroku日志:
2020-09-30T17:32:50.085184+00:00 app[web.1]:
2020-09-30T17:32:50.085206+00:00 app[web.1]: > app-name@1.0.0 start /app
2020-09-30T17:32:50.085206+00:00 app[web.1]: > node server.js
2020-09-30T17:32:50.085207+00:00 app[web.1]:
2020-09-30T17:32:50.741371+00:00 app[web.1]: WARNING: NODE_ENV value of 'production' did not match any deployment config file names.
2020-09-30T17:32:50.742187+00:00 app[web.1]: WARNING: See https://github.com/lorenwest/node-config/wiki/Strict-Mode
2020-09-30T17:32:50.792845+00:00 app[web.1]: Server started on port: 45624
2020-09-30T17:32:51.002983+00:00 app[web.1]: Connected to MongoDB..
2020-09-30T17:32:51.085455+00:00 heroku[web.1]: State changed from starting to up
2020-09-30T17:33:16.267290+00:00 heroku[router]: at=info method=GET path="/" host=app-name.herokuapp.com request_id=a5a8caa9-76bc-4ed6-92b9-360856613a70 fwd="67.243.187.129" dyno=web.1 connect=1ms service=24ms status=404 bytes=383 protocol=https
2020-09-30T17:34:13.165875+00:00 app[api]: Starting process with command `npm run dev` by user d.cint88@gmail.com
2020-09-30T17:34:21.327003+00:00 heroku[run.8330]: State changed from starting to up
2020-09-30T17:34:21.583207+00:00 heroku[run.8330]: Awaiting client
2020-09-30T17:34:21.619341+00:00 heroku[run.8330]: Starting process with command `npm run dev`
2020-09-30T17:34:31.061875+00:00 heroku[run.8330]: Process exited with status 1
2020-09-30T17:34:31.121147+00:00 heroku[run.8330]: State changed from up to complete
- 在终端中启动服务器
我的应用在本地运行的cmd为npm run dev
,它同时用于运行nodemon server
和npm start
因此,我尝试仅在其开头添加heroku run
。所以... heroku run npm run dev
这是结果
Running npm run dev on ⬢ app-name... up,run.8330 (Free)
> app-name@1.0.0 dev /app
> concurrently "npm run server" "npm run client"
[0]
[0] > app-name@1.0.0 server /app
[0] > nodemon server.js
[0]
[0] sh: 1: nodemon: not found
[0] npm ERR! code ELIFECYCLE
[0] npm ERR! syscall spawn
[0] npm ERR! file sh
[0] npm ERR! errno ENOENT
[0] npm ERR! app-name@1.0.0 server: `nodemon server.js`
[0] npm ERR! spawn ENOENT
[0] npm ERR!
[0] npm ERR! Failed at the app-name@1.0.0 server script.
[0] npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
[0]
[0] npm ERR! A complete log of this run can be found in:
[0] npm ERR! /app/.npm/_logs/2020-09-30T17_34_26_618Z-debug.log
[0] npm run server exited with code 1
[1]
[1] > app-name@1.0.0 client /app
[1] > npm start --prefix client
[1]
[1]
[1] > client@0.1.0 start /app/client
[1] > react-scripts start
[1]
[1] sh: 1: react-scripts: not found
[1] npm ERR! code ELIFECYCLE
[1] npm ERR! syscall spawn
[1] npm ERR! file sh
[1] npm ERR! errno ENOENT
[1] npm ERR! client@0.1.0 start: `react-scripts start`
[1] npm ERR! spawn ENOENT
[1] npm ERR!
[1] npm ERR! Failed at the client@0.1.0 start script.
[1] npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
[1] npm WARN Local package.json exists,but node_modules missing,did you mean to install?
[1]
[1] npm ERR! A complete log of this run can be found in:
[1] npm ERR! /app/.npm/_logs/2020-09-30T17_34_27_709Z-debug.log
[1] npm ERR! code ELIFECYCLE
[1] npm ERR! errno 1
[1] npm ERR! app-name@1.0.0 client: `npm start --prefix client`
[1] npm ERR! Exit status 1
[1] npm ERR!
[1] npm ERR! Failed at the app-name@1.0.0 client script.
[1] npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
[1]
[1] npm ERR! A complete log of this run can be found in:
[1] npm ERR! /app/.npm/_logs/2020-09-30T17_34_27_875Z-debug.log
[1] npm run client exited with code 1
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! app-name@1.0.0 dev: `concurrently "npm run server" "npm run client"`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the smash-hosting@1.0.0 dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /app/.npm/_logs/2020-09-30T17_34_27_981Z-debug.log
这是我的package.json,以防万一您也需要它:
{
"name": "app-name","version": "1.0.0","description": "","main": "index.js","scripts": {
"test": "echo \"Error: no test specified\" && exit 1","client-install": "npm install --prefix client","start": "node server.js","server": "nodemon server.js","client": "npm start --prefix client","dev": "concurrently \"npm run server\" \"npm run client\""
},"keywords": [],"author": "","license": "ISC","dependencies": {
"bcryptjs": "^2.4.3","concurrently": "^5.0.0","config": "^3.2.4","express": "^4.17.1","jsonwebtoken": "^8.5.1","moment": "^2.26.0","mongoose": "^5.7.12","react-icons": "^3.10.0","react-tournament-bracket": "^0.2.4"
},"devDependencies": {
"nodemon": "^1.19.4"
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。