POE-Component-PSD version 0.01 ============================== An HTTP/HTTPS "Persistent Session Daemon" and CGI accelerator. Summary: . a new approach to true persistent session processes with CGI . lightweight event-driven HTTP/HTTPS server manages sessions . each CGI session runs in it's own process--no more overlaps! . based on a pattern I call "Server / Controller / SubProcess" a hugely useful pattern that consists of three components: a network server, a process manager, and a set of child processes that asynchronously perform long-running tasks . ability to direct-connect, or proxy through an Apache server . proxy/redirection URLs integrate seamlessly w/existing apps . can load balance w/multiple servers, or on multiple hosts . uses Apache-style directives in the server configuration file . back-end CGI is a file descriptor; not limited to Perl scripts . includes subclass of CGI.pm to help with persistence issues . includes a module to selectively proxy from Apache server . includes two alternatives to adding another Perl module into your Apache server: using either mod_proxy or mod_rewrite . includes a script to create/self-sign SSL server certificates . no recompiling Apache or building C-libs is necessary (well, unless you need to add mod_proxy, mod_ssl or OpenSSL) . has other uses, too, such as URL-addressable shared memory . great for secure access to user data and/or on machines where running a full Web server is not appropriate It's still somewhere between a proof-of-concept and a prototype, and is a bit rough around the edges. Your feedback is welcome. Planned improvements include the following. . support additional Apache-style configuration directives such as for concurrent HTTP and HTTPS . able to "resume" sessions after timeout, not just "restart" based on session config settings . support for "admin" sessions to query the PSD server . support for configurable number of session cookies, with some number of read-only and some number of read-write . add some client script examples of login and access INSTALLATION To install this module type the following: perl Makefile.PL make make test make install DEPENDENCIES This module requires these other modules and libraries: Standard modules CGI POSIX File::Handle Additional packages required Apache-Admin-Config Digest-MD5 IO-Socket-SSL Net-SSLeay POE POE-Component-Server-SimpleHTTP POE-Component-SSLify PTools Time-HiRes OpenSSL libraries and executable Apache Web server with mod_ssl and mod_proxy (mod_rewrite optionally can be used) Optional with mod_perl 1.x Apache::Constants Apache::URI Optional with mod_perl 2.x (i.e.: version 1.99) Apache2::Const Apache2::URI APR::URI COPYRIGHT AND LICENCE Copyright (C) 2006-2007 by Chris Cobb This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.