Sha256: 4adcadea50512ebf01413851d884c56521d4dfaf01fdc88afe66069e0a01783a

Contents?: true

Size: 910 Bytes

Versions: 26

Compression:

Stored size: 910 Bytes

Contents

/*!
 * Ext JS Connect
 * Copyright(c) 2010 Sencha Inc.
 * MIT Licensed
 */

/**
 * Setup vhost for the given `hostname` and `server`.
 *
 * Examples:
 *
 *     connect.createServer(
 *       connect.vhost('foo.com',
 *          connect.createServer(...middleware...)
 *      ),
 *       connect.vhost('bar.com',
 *           connect.createServer(...middleware...)
 *       )
 *     );
 *
 * @param {String} hostname
 * @param {Server} server
 * @return {Function}
 * @api public
 */

module.exports = function vhost(hostname, server){
    if (!hostname) {
        throw new Error('vhost hostname required');
    }
    if (!server) {
        throw new Error('vhost server required');
    }
    return function vhost(req, res, next){
        var host = req.headers.host.split(':')[0];
        if (host === hostname) {
            server.handle(req, res);
        } else {
            next();
        }
    };
};

Version data entries

26 entries across 26 versions & 1 rubygems

Version Path
vulcan-0.8.2 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.8.1 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.8.0 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.7.2 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.7.1 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.7.0 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.6.1 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.6.0 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.5.0 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.4.0 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.3.0 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.2.5 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.2.4 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.2.3 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.2.2 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.2.1 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.2.0 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.1.6 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.1.5 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js
vulcan-0.1.4 server/node_modules/connect-form/support/connect/lib/connect/middleware/vhost.js