lwHTTPd

My (sort of) fork of the httpserver_raw app in the contrib tree of the lwIP TCP/IP stack

So many changes to introduce, not many collaborators, too complicated to keep the old stuff (which in some cases was really far from what I was used to, coming from Rabbit, more closer to a standard).

The goal of this project is to have a minimal HTTP server running on a microcontroller with no OS nor file systems, with the following characteristics

  • SSI
    • Standard tags, so the entire web page can be designed on any host.
    • Echo var support
    • Exec cmd functions similar to CGI functions
  • CGI
    • Simple functions with buffer write and state machine capability.
    • Easy POST handling within the same single-entry function
  • Basic authentication.
  • As close to the standards as possible, but keeping the memory footprint to a minimum without sacrificing performance or adding CPU load

This is a work in progress, documentation is minimal and probably not up to date. If you point that out, please state what and where so I can fix it right away.

As always, read the README file (that’s why it has that name, doesn’t it ?). If anything is not clear, let me know and I will try to do it right (assuming I agree with you… ;^)).

Second beta

Fixed some issues, added developer-friendly POST, got rid of legacy stuff.

Started working on multipart content for CGI POSTs (file upload; there is some support, but don't rely on it). The POST structure might radically change due to this.

lwHTTPd


First beta

No friendly POST yet, everything else should work. There are two SSI engines here, the original and my own. There can be only one, so you know whose head will roll.
Old CGI is still there and many legacy stuff too. They will go away. Bear in mind that parameter passing and CGI structure might (will) change when POST or other stuff is introduced, so don't rely too much on this by now.

lwhttpd


Want to share this ?

Leave a Reply

Your email address will not be published. Required fields are marked *

Enter Captcha Here : *

Reload Image