On Thu, 2 Jun 2011, Leonardo M. Ramé wrote:
On 2011-06-02 18:30:06 +0200, Michael Van Canneyt wrote:Hi, In revision 31011 I committed support for a HTTP server application in Lazarus, in the lazwebextra package. This is similar in functionality to the embweb package by Joost, but it does not use any external packages: you only need the latest FPC for this (at least rev. 17633). It has an option to be able to serve regular files out-of-the-box. This is implemented as a regular fpWeb HTTP module, which simply sends a file if it finds it. This module is implemented in a (new) unit fpwebfile. It works similar to the Apache server's Alias directive: RegisterFileLocation('files','/some/existing/directory'); will map /files/index.html to /some/existing/directory/index.html and send it. Multiple locations can be registered. if a mime.types file is present, the correct content-type is sent. The FPC packages/fcl-web/examples/httpapp directory contains an example of how to use all this. This means that FPC can now be used out of the box to implement web applications/pages as - CGI. - FastCGI. - Apache module. - Standalone webserver. IIS ISAPI support is planned. Comments/suggestions welcome.Michael, I added a webmodule to testhttp and got two problems. 1 - Could not determine HTTP module for request "". Even if I call it the same way as I use with fpCGI and fpEmbWeb.
That is strange, because it works fine here ? Can you send a test program please ? (in private) then I will test. Did you test the sample program ? Does it happen there too ?
2 - The 2nd time I run the program I get. ESocketError "Binding of socket failed: 8080".
Yes. This can happen sometimes, and it is normal.You need to wait till the kernel releases the address again. Waiting 20 seconds is usually enough. (I agree it is annoying ;) )
It is on my todo list to add setsocketopt(SO_REUSEADDR) support to ssockets. This will remedy the problem. I will try to do it this weekend.
I'm running Ubuntu 11.04 - 64bits.
Good choice. I run the same system ;-) Michael.
-- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
