diff --git a/examples/README.md b/examples/README.md
index e1668767..a50b54bd 100644
--- a/examples/README.md
+++ b/examples/README.md
@@ -40,5 +40,8 @@ Cowboy Examples
* [static_world](./static_world):
static file handler
+ * [web_sever](./web_server):
+ serves files with lists directory entries
+
* [websocket](./websocket):
websocket example
diff --git a/examples/web_server/README.md b/examples/web_server/README.md
new file mode 100644
index 00000000..c123c988
--- /dev/null
+++ b/examples/web_server/README.md
@@ -0,0 +1,27 @@
+Cowboy Static File Handler with Index Support
+=============================================
+
+To compile this example you need rebar in your PATH.
+
+Type the following command:
+```
+$ rebar get-deps compile
+```
+
+You can then start the Erlang node with the following command:
+```
+./start.sh
+```
+
+Cowboy will serve all the files you put in the priv/ directory. You can replace
+the filename given in the example URL with the one of a file you added to this
+directory to receive that file. A middleware has been added that will re-route
+the request to a different handler if the requested path is a directory.
+
+Example
+-------
+
+Point your browser to http://localhost:8080 to see the contents of `priv/`. You
+can click on a link to see that file. If HTML is not preferred, the contents of
+a directory will be listed as a JSON array (e.g. with `curl
+http://localhost:8080`).
diff --git a/examples/web_server/priv/small.mp4 b/examples/web_server/priv/small.mp4
new file mode 100644
index 00000000..1fc47884
Binary files /dev/null and b/examples/web_server/priv/small.mp4 differ
diff --git a/examples/web_server/priv/small.ogv b/examples/web_server/priv/small.ogv
new file mode 100644
index 00000000..6409d6e6
Binary files /dev/null and b/examples/web_server/priv/small.ogv differ
diff --git a/examples/web_server/priv/test.txt b/examples/web_server/priv/test.txt
new file mode 100644
index 00000000..760cddb0
--- /dev/null
+++ b/examples/web_server/priv/test.txt
@@ -0,0 +1 @@
+If you read this then the static file server works!
diff --git a/examples/web_server/priv/video.html b/examples/web_server/priv/video.html
new file mode 100644
index 00000000..eca63ee4
--- /dev/null
+++ b/examples/web_server/priv/video.html
@@ -0,0 +1,11 @@
+
+
+