chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-users] A project: mod_seas


From: Ed Watkeys
Subject: [Chicken-users] A project: mod_seas
Date: Sun, 27 Feb 2005 22:23:25 -0500

Hi,

For the last few days, I've been working on a little project, mod_seas. It's an Apache 2.0 module written in C that sends Apache requests to an external process in the form of an s-expressions. It reads a reply and sends it to the client. My goal is eventually build something that will cease pointless writing of HTTP servers in Scheme.

The current status of the project is consistent with its few-days-old age. It handles all server requests, cannot be configured through httpd.conf, and doesn't allow the external process to set headers, determine the content type, or do anything other than send content to the client.

I'm writing to find out if anyone's interested in a project like this and if anyone on the list has experience writing Apache modules. Ideally, I'd like to have a few people experienced with Apache module development who I could ask advice of.

I can make source available to anyone interested. The code will eventually be licensed under a BSD-style license. Below is an example of the a-list that the module sends over the wire to the external process.

Regards,
Ed

((env (HTTP_HOST . "localhost:7714")
      (HTTP_CONNECTION . "close")
      (HTTP_USER_AGENT
        .
"Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en) AppleWebKit/125.5.6 (KHTML, like Gecko) Safari/125.12")
      (HTTP_ACCEPT . "*/*")
(HTTP_ACCEPT_ENCODING . "gzip, deflate;q=1.0, identity;q=0.5, *;q=0")
      (HTTP_ACCEPT_LANGUAGE
        .
"en, ja;q=0.77, de;q=0.92, fr;q=0.88, es;q=0.85, ja-jp;q=0.81, de-de;q=0.96, it-it;q=0.73, it;q=0.69, nl-nl;q=0.65, nl;q=0.62, sv-se;q=0.58, sv;q=0.54, no-no;q=0.50, no;q=0.46, da-dk;q=0.42, da;q=0.38, fi-fi;q=0.35, fi;q=0.31")
      (CONTENT_TYPE . "application/x-www-form-urlencoded")
      (CONTENT_LENGTH . "40")
      (PATH .
"/usr/local/apache2/bin:/sw/bin:/sw/sbin:/Users/edw/bin:/usr/local/bin: /usr/local/pgsql/bin:/Users/edw/OraHome_1/bin:/usr/X11R6/bin:/usr/ local/Gambit-C/bin:/bin:/sbin:/usr/bin:/usr/sbin")
      (SERVER_SIGNATURE
        .
"<address>Apache/2.0.53 (Unix) Server at localhost Port 7714</address>
")
      (SERVER_SOFTWARE . "Apache/2.0.53 (Unix)")
      (SERVER_NAME . "localhost")
      (SERVER_ADDR . "127.0.0.1")
      (SERVER_PORT . "7714")
      (REMOTE_ADDR . "127.0.0.1")
      (DOCUMENT_ROOT . "/usr/local/apache2/htdocs")
      (SERVER_ADMIN . "address@hidden")
      (SCRIPT_FILENAME . "/usr/local/apache2/htdocs/fish-monster")
      (REMOTE_PORT . "59909")
      (GATEWAY_INTERFACE . "CGI/1.1")
      (SERVER_PROTOCOL . "HTTP/1.1")
      (REQUEST_METHOD . "POST")
      (QUERY_STRING . "walking-down-the-avenue")
      (REQUEST_URI . "/fish-monster?walking-down-the-avenue")
      (SCRIPT_NAME . "/fish-monster"))
 (body . "f-name=Ed&l-name=Watkeys"))





reply via email to

[Prev in Thread] Current Thread [Next in Thread]