2015-02-10 20 views
5

Tôi đang cố gắng triển khai cho heroku nhưng Im nhận được Error: ENOENT, stat '/app/build/index.html' khi tôi truy cập địa chỉ của mình. Nếu không, triển khai ứng dụng sẽ không cho tôi bất kỳ lỗi nào. Ai đó có thể giải thích những gì Im làm sai. Đây là mã của tôi và cấu trúc mã.Lỗi heroku: ENOENT, stat '/app/build/index.html'

server.js

var express = require('express'), 
    server = express(), 
    bodyParser = require('body-parser'), 
    logger = require('morgan'), 
    methodOverride = require('method-override'); // for heroku 

var port = process.env.PORT || 5000; 

server.use(express.static(__dirname + '/build')); 
server.use('/src', express.static(__dirname + '/build/src'));  // js 
server.use('/assets', express.static(__dirname + '/build/assets')); // css, images 
server.use('/vendor', express.static(__dirname + '/build/vendor')); // other 

server.use(logger('dev')); 

server.get('/', function(req, res, next) { 
    res.sendfile('index.html', { root: __dirname + '/build' }); 
}); 

server.listen(port, function() { 
    console.log("Listening on " + port); 
}); 

Cấu trúc trong ứng dụng

├── Gruntfile.js 
├── LICENSE 
├── Procfile 
├── README.md 
├── bower.json 
├── build 
│   └── .... 
├── build.config.js 
├── config 
│   └── db.js 
├── karma 
│   └── karma-unit.tpl.js 
├── module.prefix 
├── module.suffix 
├── node_modules 
│   └── ... 
├── package.json 
├── server.js 
├── src 
│   ├── app 
│   ├── assets 
│   ├── common 
│   ├── index.html 
│   └── less 
└── vendor 

Cấu trúc trong ứng dụng/xây dựng

├── assets 
│   ├── O-viu-0.0.1.css 
│   └── README.md 
├── index.html 
├── karma-unit.js 
├── src 
│   └── app 
│    ├── about 
│    │   └── about.js 
│    ├── app.js 
│    └── home 
│     └── home.js 
├── templates-app.js 
├── templates-common.js 
└── vendor 
    ├── angular 
    │   └── angular.js 
    ├── angular-bootstrap 
    │   └── ui-bootstrap-tpls.min.js 
    ├── angular-ui-router 
    │   └── release 
    │    └── angular-ui-router.js 
    └── placeholders 
     └── angular-placeholders-0.0.1-SNAPSHOT.min.js 

Trả lời

0

Thử s omthing như thế này:

res.sendfile(__dirname + '/build/index.html'); 
+0

Cảm ơn, nhưng Im vẫn gặp lỗi. – patriques

5

Đã tìm ra. Đó là tệp .gitignore của tôi, nơi tôi đã đưa vào thư mục /build.

+0

Tôi đã kéo mái tóc của mình ra ngoài hơn một ngày vì vấn đề này và tất cả đều rơi xuống chỉ bao gồm thư mục xây dựng của tôi. Cảm ơn bạn! Kết thúc bằng cách sử dụng Git thay vì hệ thống git của Heroku vì vậy tôi đã có thể hình dung tốt hơn những tập tin được thêm vào hoặc gỡ bỏ. –

+0

Vui vì nó rất hữu ích! – patriques