0

connectのvhost機能を使用して、いくつかのexpress.jsアプリを開発vpsにデプロイしたいと思います。これが、適切な場所にリクエストを送信することになっている私のserver.jsファイルです。

var express = require('express')
var quotes = require('quote-of-the-day/lib/app.js');    
var server = express();  
server.use(express.vhost('inspiringquoteoftheday.com',quotes));    
server.listen(80);

ノードserver.jsを実行すると、次のエラーがスローされます。

Error: Cannot find module 'quote-of-the-day/lib/app.js' 

server.jsが配置されているディレクトリから直接app.jsにcdできますが。

これが、エクスプレスアプリをエクスポートするlib / app.jsファイルです(私は思います)

// Generated by CoffeeScript 1.3.3
(function() {
  var app, express, pub;

  express = require('express');

  module.exports = app = express();

  pub = __dirname + '/public';

  app.use(express["static"](pub));

  app.use(express.errorHandler());

  app.use(app.router);

  app.set('views', __dirname + '/views');

  app.set('view engine', 'jade');

  app.get('/', function(req, res) {
    return res.render('home');
  });

}).call(this);
4

2 に答える 2

0

次のようなディレクトリ構造を想定します。

|-. quote-of-the-day
  |-- server.js <-- the file you list in your question
  |-. lib
    |-- app.js

次に、あなたはあなたを要求する必要がありapp.jsます

require('./lib/app');
于 2012-09-08T01:33:52.463 に答える
0

ここで__dirnameグローバル変数を使用すると役立つ場合があります。'現在実行中のスクリプトが存在するディレクトリの名前'を提供します。したがって、次のことができます。

var otherApp = require(__dirname + 'quote-of-the-day/lib/app.js')

http://nodejs.org/docs/latest/api/globals.html

于 2012-11-01T20:15:54.187 に答える