X-Git-Url: http://git.plutz.net/?p=cgilite;a=blobdiff_plain;f=server.sh;h=0cb43ffbc57cef49e45c951b7e4194a87df15704;hp=4eb253ffe2696f5ac5be0b60be18d91da74b2511;hb=ee25e0e34ad0a47e2d2aad17b070ed7474f4c571;hpb=b3455673aa27e118f55b91fe69a4b07c42dbe3a7 diff --git a/server.sh b/server.sh index 4eb253f..0cb43ff 100755 --- a/server.sh +++ b/server.sh @@ -34,6 +34,10 @@ sed -unr ' h s;^(GET|HEAD|POST) ([^\?]*)\??(.+)? (HTTP\/[0-9]\.[0-9])\r?$;export REQUEST_METHOD='\''\1'\'';p g + s;^(GET|HEAD|POST) ([^\?]*\??.*) (HTTP\/[0-9]\.[0-9])\r?$;\2; + s;'\'';'\''\\'\'''\'';g + s;^.*$;export REQUEST_URI='\''&'\'';p + g s;^(GET|HEAD|POST) ([^\?]*)\??(.+)? (HTTP\/[0-9]\.[0-9])\r?$;\2; s;'\'';'\''\\'\'''\'';g s;^.*$;export PATH_INFO='\''&'\'';p @@ -71,9 +75,10 @@ HTTP_format(){ /^\r?$/!{H;n;bA} g - s;^(\r?\n)*;; + s;^(\r?\n)*;;; + s;([^\r])\n;\1\r\n;g; aConnection: close\r\n\r - /^HTTP\/[0-9]\.[0-9] [1-5][0-9][0-9] .*/bX + /^Status: *[1-5][0-9][0-9] .*/{s;^Status: *;HTTP/1.1 ;; bX} s;^(.+\n)?Location: .*$;HTTP/1.1 302 Found\r\n&; s;^(.+\n)?Content-Type: .*$;HTTP/1.1 200 OK\r\n&;