Simple express server for static file delivering.
To install it all you need is to run this on terminal:
npm install 3w -g
To run a server and expose a directory (let's say its name is src
) all you should do is:
3w src --3000
To enable https you could also pass --https
which usually needs you to have sudo
access on the machine:
3w src --3000 --https
When it comes to setting up a simple HTTP Server to serve a specific dir, we have different of options.
One of the usual way of doing that which has a tone of restrictions, is using python
like:
python -m SimpleHTTPServer 8080
which allows me to expose the current dir as a http server on the specific port number. I created 3w as an alternative with bunch of advanced features. Being able to set up http proxies is one of the useful features which saves a lot of pain when developing a web application. Http proxies are not provided in the current version but they will be soon with a nice and useful way of setting up the configuration.
You could also require
3w as a module, and set up the server like:
var www = require('3w'),
app;
app = www({
enableHTTPS: true,
port: 8888,
dir: 'src'
});
or:
//This will expose the 'app' folder and 'enableHTTPS' will be false
app = www({
port: 8888
});
or:
//This will expose the 'src' folder on '9000' and 'enableHTTPS' will be false
app = www({
dir: 'src'
});
or:
//This will expose the 'app' folder on '9000' and 'enableHTTPS' will be false
app = www();
Using 3w
you could also tweak the app
object to set up your http-proxies
like:
var www = require('3w'),
app;
function proxy(app){
//...
}
app = www({
enableHTTPS: true,
port: 8888,
dir: 'src',
proxy: proxy
});