Multisite Request Handler
A simple library for routing an incomming message to different handlers based on the hostname in the request's Host header.
const http = require('http');
const multisite = require('multisite-hander');
const siteOne = (req, res) => res.end('Welcome to kittens.example, home of kitten things!')
const siteTwo = (req, res) => res.end('Welcome to anarchism.example, home of anarchist things!')
const handler = multisite({
'kittens.example': siteOne,
'anarchism.example': siteTwo
})
http.createServer(handler).listen(1234);
Also accepts an async function instead of a dict, so you can write more complex matchers
(or even something async like looking names up in a database).
const handler = multisite(hostname => {
if(hostname.match(/\bkittens\.example$/)) {
return kittenSite;
}
})