javascript - 部署到 heroku 时获取 "Cannot GET/",但没有错误消息?

标签 javascript heroku

之前,我能够通过这个 suggestion 解决我的 webpack 问题.但是,当我尝试部署我的 React 应用程序时,我没有收到任何错误,但当我浏览到我已部署的链接时收到“无法获取/”。我尝试更改 script,甚至将我的整个项目移动到 public 文件夹。似乎没有什么适合我。我在此过程中缺少哪一步?

我的项目目录如下:

|-node_modules
|-public
  |-app
  |-src
  |-webpack.config.js
|-package.json
|-Procfile
|-server.js

app 文件夹包含我的 html、css 和 main.js 文件。 src 文件夹包含我的组件。这是我当前的 package.json 文件:

{
  "name": "",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "serve": "webpack-dev-server"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "babel-core": "5.8.*",
    "babel-loader": "5.3.*",
    "express": "^4.14.1",
    "react": "^15.4.2",
    "react-dom": "^15.4.2",
    "webpack": "^1.14.0",
    "webpack-dev-server": "^2.3.0"
  }
}

这是我的 server.js:

var express = require('express');
var app = express();

app.use(express.static(__dirname + '/public'));

app.listen(process.env.PORT || 8080);

感谢您的帮助。谢谢。

最佳答案

  • 键入 heroku logs,这样您就可以更仔细地查看错误

  • 确保您的 Procfile 如下所示:web: webpack-dev-server

  • 你有路线文件夹吗?如果没有,请执行以下操作:创建一个路由文件夹,添加一个名为 index.js 的文件。在该文件中,添加:

    var express = require('express');  
    var router = express.Router();

    router.get('/', function(req, res, next) {  
          res.status(200).send("Hi, It works!")  
    });  
  • 在您的server.js 文件中添加
    var videos = require('./routes/index');
    app.use('/vids', 视频);

  • 在本地测试,如果正常,再部署到 heroku。

关于javascript - 部署到 heroku 时获取 "Cannot GET/",但没有错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42322183/

相关文章:

javascript - 如何将参数从javascript传递给less

javascript - HTML 文本输入仅允许数字输入

python - Flask 应用程序无一异常(exception)地引发 500 错误

git - 无法在 Windows 7 上运行 Toolbelt — 参数无效 'heroku-cli.exe'

python - 如何在 Heroku 云上部署 Scrapy 蜘蛛

javascript - 即使单击提交按钮后仍保留单选按钮

javascript - 如何将此 JS 函数转换为 Coffeescript?

ruby-on-rails - PostgreSQL Ruby Heroku 问题

ruby-on-rails - Resque worker 使用 PostgreSQL 服务器失败

javascript - Vue.js 工作流程(从 Vue.js 1 到 2)