Angularjs 获取错误平均值应用程序

Angularjs 获取错误平均值应用程序,angularjs,node.js,nginx,mean-stack,Angularjs,Node.js,Nginx,Mean Stack,我一直在学习如何使用MEAN stack来构建web应用程序,到目前为止,这非常有趣。我没有使用yeoman生成器或npm应用程序为我生成代码,而是从头开始构建我的整个应用程序。通过这种方式,我知道每一部分是如何连接的,以及我的应用程序发生了什么。我刚开始连接我的应用程序的前端和后端,当我看着开发人员控制台时,看到 GET http://blog.dev/bower_components/angular/angular.js 不仅是角度,还有我所有的其他资源(现代化、角度路线、mootools

我一直在学习如何使用MEAN stack来构建web应用程序,到目前为止,这非常有趣。我没有使用yeoman生成器或npm应用程序为我生成代码,而是从头开始构建我的整个应用程序。通过这种方式,我知道每一部分是如何连接的,以及我的应用程序发生了什么。我刚开始连接我的应用程序的前端和后端,当我看着开发人员控制台时,看到

GET http://blog.dev/bower_components/angular/angular.js
不仅是角度,还有我所有的其他资源(现代化、角度路线、mootools、Restanglar等…)。使用yeoman角度生成器时,您需要运行
grunt serve
命令来启动角度侧。因为我从头开始构建应用程序,并且我使用npm作为构建工具,所以我不知道如何构建前端服务器。因此,我使用了一个简单的nginx虚拟主机,它指向我的index.html。以下是配置:

server {
        listen 80;

        server_name blog.dev;

        root /home/michael/Workspace/blog/app;
        index index.html index.htm;

        location / {
                try_files $uri $uri/ =404;
        }
}

我不确定还有什么其他变量会影响这种情况,所以如果我错过了什么,请告诉我,我会很高兴给你你需要的

如果您使用的是平均堆栈,那么您应该能够通过node直接承载后端和服务前端

我不确定你的项目结构,但这是我正在研究的一个项目的结构

/bin --contains a file called www.js (used to launch app)
/data
/models
/node_modules
/public -- contains my angular implementation
/routes -- contains express routes
/temp
/upload
/views
app.js -- main configuration for express
api.js -- my apis
package.json
在/bin/www.js文件中,您有启动节点服务器的代码

var app = require('../app');

app.set('port', process.env.PORT || 3000);

var server = app.listen(app.get('port'), function() {
debug('Express server listening on port ' + server.address().port);
});        
您还需要设置express和路线,以便首先查看路线 在routes目录中,我有一个名为index.js的文件

在这个文件中,我定义了一条通向angular index.html页面的路径

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

/* GET home page. */
router.get('/', function(req, res) {
res.redirect('/pages/index.html');
});

module.exports = router;
当然,您需要设置express

process.env.TMPDIR = 'tmp'; // to avoid the EXDEV rename error, see            http://stackoverflow.com/q/21071303/76173

var express = require('express');
var path = require('path');
var favicon = require('static-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var multer = require('multer');
var flow = require('./flow-node.js')('tmp');
var multipart = require('connect-multiparty');
var multipartMiddleware = multipart();
var uuid = require('uuid');
var mongoose = require('mongoose');
var session = require('express-session');

var routes = require('./routes/index');

var app = express();

app.use(favicon());
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(cookieParser());
app.use(session({genid: function(req) { return uuid.v4()}, secret:   'XXXXXXXXXXX',
    saveUninitialized: true,
    resave: true}));
app.use(express.static(path.join(__dirname, 'public')));

app.use('/', routes);
app.use('/users', users);

module.exports = app;
现在假设您的Angular文件和javascript位于“public”目录的某个位置,您应该能够使用以下命令启动节点

node bin/www
以及您的浏览器所处的位置和业务


希望这有助于您愉快地学习。

检查文件夹/文件的权限,可能是nginx用户无法从中读取。否:/I我在整个项目中尝试了chmod-R 755,但没有任何更改。请检查路径。文件在那里吗?