From 4d728ab9a855ec973c63a1932c492fde012a3d4e Mon Sep 17 00:00:00 2001 From: Uriel Date: Sun, 14 Sep 2008 21:38:38 +0200 Subject: [PATCH] Add a web server in rc by maht --- bin/contrib/webserver.rc | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 bin/contrib/webserver.rc diff --git a/bin/contrib/webserver.rc b/bin/contrib/webserver.rc new file mode 100644 index 0000000..d250bec --- /dev/null +++ b/bin/contrib/webserver.rc @@ -0,0 +1,30 @@ +#!/usr/local/plan9/bin/rc + +# A web server in rc by maht +# Originally from http://www.proweb.co.uk/~matt/rc/webserver.rc + +ifs = ' ' +request = `{sed 1q} + +url = $request(2) +file = `{echo $url | sed 's/http:\/\/[^\/]*//' | tr -d \012} + +if(test -d $file){ + file = $file ^'/index.html' +} +if (test -e $file) { + response = '200' +} +if not { + response = '404' + file = '404.html' +} + +echo 'HTTP/1.1 ' ^$response +echo 'Date: ' `{date} +echo 'Server: rc shell' +echo 'Content-Length: ' `{cat $file | wc -c | tr -d ' '} +echo 'Content-Type: ' `{file -i $file | awk ' { print $2 } '} +echo 'Connection: close' +echo +cat $file