0

Meteor 0.6.6.2 に問題があります

プロダクションにデプロイするとき。次のエラーが必要です:

/home/gt/webapps/meteor/bundle/programs/server/boot.js:185
}).run();
   ^
Error: a route URL prefix must begin with a slash
    at _.extend.declare (packages/routepolicy/routepolicy.js:95)
    at new StreamServer (packages/livedata/stream_server.js:23)
    at new Server (packages/livedata/livedata_server.js:980)
    at Package (packages/livedata/server_convenience.js:10)
    at packages/livedata.js:3909:4
    at packages/livedata.js:3920:3
    at /home/gt/webapps/meteor/bundle/programs/server/boot.js:154:10
    at Array.forEach (native)
    at Function._.each._.forEach (/home/gt/webapps/meteor/bundle/programs/server/node_modules/underscore/underscore.js:79:11)
    at /home/gt/webapps/meteor/bundle/programs/server/boot.js:81:5

私の root_url は次のように設定されています:

export ROOT_URL=' http://sub.mydomain.com '

古いバージョンの Meteor でも問題はありませんでした。

4

3 に答える 3

1

名前空間付きルートをサポートするために私が行っていることは次のとおりです (Iron Router を使用):

lib/namespace.js内容:

Router._mapOld = Router.map;

Router.map = function(namespace, cb) {
    if (_.isFunction(namespace)) {
        cb = namespace;
        return Router._mapOld.call(this, cb);
    }

    namespace = namespace.replace(/\/+$/, '');

    var that       = this;
    that._routeOld = that.route;
    that.route     = function(name, options) {
        if (!_.isString(options.path)) {
            throw new Error(
                'Namespaced routes must have a path specified as a string.');
        }
        return that._routeOld.call(that, name, _.extend(options, {
            path : namespace + options.path
        }));
    };

    var ret = Router._mapOld.call(that, cb);

    that.route = that._routeOld;

    return ret;
};

次に、次のことができます。

Router.map(function() {
    // Add routes normally with no prefix
});

Router.map('/prefix', function() {
    // All routes you add here will be prefixed with /prefix
});
于 2013-12-17T04:00:57.370 に答える
0

どこかでミドルウェアまたはサーバー側のルートを使用していますか? pathその場合、ミドルウェアのすべてのパラメーターは で始まる必要がある/ため、 に変更some/path/some/pathます。最近のバージョンの1つで重要になり始めました。

ROOT_URLちなみに、で終わる必要はありません/- あなたのは正しいです。

于 2013-10-29T14:20:55.910 に答える