Introduction to http-server
http-server is a simple, zero-configuration command-line static HTTP server. It is powerful enough for production usage, but it's simple and hackable enough to be used for testing, local development and learning.
npx http-server [path] [options]
npm install -g http-server
http-server [path] [options]
Usage:
 http-server [path] [options]
[path] defaults to ./public if the folder exists, and ./ otherwise.
Now you can visit http://localhost:8080 to view your server
Note: Caching is on by default. Add -c-1 as an option to disable caching.
Available Options:
| Command | Description | Defaults | 
|---|---|---|
-p or --port | 
Port to use. Use -p 0 to look for an open port, starting at 8080. It will also read from process.env.PORT. | 
8080 | 
-a | 
Address to use | 0.0.0.0 | 
-d | 
Show directory listings | true | 
-i | 
Display autoIndex | true | 
-g or --gzip | 
When enabled it will serve ./public/some-file.js.gz in place of ./public/some-file.js when a gzipped version of the file exists and the request accepts gzip encoding. If brotli is also enabled, it will try to serve brotli first. | 
false | 
-b or --brotli | 
When enabled it will serve ./public/some-file.js.br in place of ./public/some-file.js when a brotli compressed version of the file exists and the request accepts br encoding. If gzip is also enabled, it will try to serve brotli first. | 
false | 
-e or --ext | 
Default file extension if none supplied | html | 
-s or --silent | 
Suppress log messages from output | |
--cors | 
Enable CORS via the Access-Control-Allow-Origin header | 
|
-o [path] | 
Open browser window after starting the server. Optionally provide a URL path to open. e.g.: -o /other/dir/ | |
-c | 
Set cache time (in seconds) for cache-control max-age header, e.g. -c10 for 10 seconds. To disable caching, use -c-1. | 
3600 | 
-U or --utc | 
Use UTC time format in log messages. | |
--log-ip | 
Enable logging of the client's IP address | false | 
-P or --proxy | 
Proxies all requests which can't be resolved locally to the given url. e.g.: -P http://someurl.com | |
--proxy-options | 
Pass proxy options using nested dotted objects. e.g.: --proxy-options.secure false | |
--username | 
Username for basic authentication | |
--password | 
Password for basic authentication | |
-S, --tls or --ssl | 
Enable secure request serving with TLS/SSL (HTTPS) | false | 
-C or --cert | 
Path to ssl cert file | cert.pem | 
-K or --key | 
Path to ssl key file | key.pem | 
-r or --robots | 
Automatically provide a /robots.txt (The content of which defaults to User-agent: *\nDisallow: /) | 
false | 
--no-dotfiles | 
Do not show dotfiles | |
--mimetypes | 
Path to a .types file for custom mimetype definition | |
-h or --help | 
Print this list and exit. | |
-v or --version | 
Print the version and exit. |