在node.js的openshift设置中附加index.html中的静态文件

时间:2014-07-04 02:31:07

标签: node.js openshift

我想设置一个node.js后端来为我正在构建的应用程序提供服务。我正在使用openshift并且设置正常,我的基本index.html显示正常。但是,当我尝试添加我的CSS和js文件时,我不能。

<link rel="stylesheet" type="text/css" href="css/style.css">

我找到了这个页面,我遇到了与上述相同的问题,但还没有解决方案。

https://www.openshift.com/forums/openshift/problem-linking-css-and-js-in-my-nodejs-app

2 个答案:

答案 0 :(得分:1)

我通过在server.js中添加此代码来实现此功能

server.use('/static', express.static(__dirname + '/resources'));

我将所有静态文件保存在资源文件夹中。

答案 1 :(得分:1)

解决!我的CSS和JS文件夹中包含相应的文件,而server.js代码现在看起来像这样初始化服务器:

 /**
 *  Initialize the server (express) and create the routes and register
 *  the handlers.
 */
self.initializeServer = function() {
    self.createRoutes();
    self.app = express.createServer();


    self.app.configure(function(){
                       //self.app.use(express.cookieParser());
                       //self.app.use.(express.session({secret:"secret",key:"express.sid"}));
                       ['css', 'img', 'js', 'plugin', 'lib'].forEach(function (dir){
                                                                     self.app.use('/'+dir, express.static(__dirname+'/'+dir));
                                                                     });
                       self.app.set('views', __dirname + '/views');
                       self.app.set('view engine', 'ejs');
                       });


    //  Add handlers for the app (from the routes).
    for (var r in self.routes) {
        self.app.get(r, self.routes[r]);
    }
};