summaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md76
1 files changed, 76 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 00000000..a317c80c
--- /dev/null
+++ b/README.md
@@ -0,0 +1,76 @@
+HTTP Server over TCP/ICN
+====================================================
+This is an implementation of a HTTP server able to serve client requests
+using both TCP and ICN as transport protocol.
+
+This project is a fork from the http server implemented by Ole Christian Eidheim and
+open sourced at https://github.com/eidheim/Simple-Web-Server.
+
+In the ICN flavour, so far, we support just the GET method. Later we'll be implementing the
+remaining methods as well.
+
+Dependencies
+------------
+
+- libboost-regex-dev
+- libboost-system-dev
+- libboost-filesystem-dev
+- libicnet
+
+Build the HTTP-Server
+-----------------
+
+For building the library, from the root folder of the project:
+
+```bash
+ $ mkdir build && cd build
+ $ cmake ..
+ $ make
+```
+
+Install the HTTP-Server
+-------------------
+
+For installing the application:
+
+```bash
+ $ cd build
+ $ sudo make install
+```
+
+Usage
+-----
+
+For starting the http-server, from the build folder:
+
+```bash
+ $ cd build
+ $ ./http-server
+```
+
+The server now is:
+- serving files from the folder **/var/www/html**
+- Listening on the icn name /webserver
+- Listening on the TCP port 8080
+
+For retrieving a content through icn, the name must have the following format:
+
+`iget http://webserver/get/file.mp4`
+
+The server accept two option through the command line:
+
+```bash
+ $ ./http-server -h
+ http-server [-p PATH_TO_ROOT_FOOT_FOLDER] [-l WEBSERVER_PREFIX]
+```
+
+The default values are **/vaw/www/html** for the root folder and **ccnx:/webserver** for the icn name.
+
+Platforms
+---------
+
+Libicnet has been tested in:
+
+ - Ubuntu 16.04 (x86_64)
+ - Debian Testing
+ - MacOSX 10.12 \ No newline at end of file