ApplicationsUsingLighttpd » History » Revision 9
« Previous |
Revision 9/34
(diff)
| Next »
Anonymous, 2005-11-09 17:48
add info where to get persistent.pl
= Applications Using lighttpd =
Lighttpd works nicely with most web-projects. To get them setup easily some are providing special lighttpd setups.
- [http://www.rubyonrails.org/ RubyOnRails]
- [http://drupal.org/node/20766 Drupal]
- [http://hieraki.simplicio.com/read/book/1 Lighttpd: The painless way]
- [http://wordpress.org/support/topic/27541 Wordpress]
- [http://laitsas.com/wordpress/3/rewrite-rules/ Wordpress with permalink structure]
- [http://trac.lighttpd.net/trac/wiki/TracInstall Trac]
- [http://article.gmane.org/gmane.comp.web.lighttpd/1752 Mailman]
- [http://bradchoate.com/weblog/2005/08/26/mt-32-and-lighttpd-fastcgi Moveable Type 3.2]
I just received a mail from Alex Shah <ashah@teamsoa.com>:
{{{
I thought you might like to include this in the distribution:
#!/usr/bin/perl
use strict;
use CGI::Fast;
use Embed::Persistent;
{
my $p = Embed::Persistent->new();
while (new CGI::Fast) {
my $filename = $ENV{SCRIPT_FILENAME};
my $package = $p->valid_package_name($filename);
my $mtime;
if ($p->cached($filename, $package, \$mtime))
{
eval {$package->handler;};
}
else
{
$p->eval_file($ENV{SCRIPT_FILENAME});
}
}
}
Here's the lighttpd.conf:
fastcgi.server = ( ".pl" =>
(( "socket" => "/tmp/application.fcgi.socket",
"bin-path" => "/Users/ashah/docroot/dispatch.fcgi",
))
)
}}}
There is sometime problem to compile ExtUtils from CPAN which provide Embed::Persistent, so you can only download them and copy lib/Embed to your perl path. You can also find some info at [http://search.cpan.org/dist/perl/pod/perlembed.pod#Maintaining_a_persistent_interpreter]
multiple RubyOnRails on one serverhttp://wiki.rubyonrails.com/rails/show/HowtoDeployMoreThanOneRailsAppOnOneMachine describes this on Apache, here we do it on lighty:
{{{
$HTTP["url"] =~ "^/appOne" {
url.rewrite = ( "^/appOne(/.*)$" => "/appOne/public$1" )
fastcgi.server = ( "dispatch.fcgi" => (( "bin-path" ... )))
server.error-handler-404 = "/appOne/dispatch.fcgi"
}
$HTTP["url"] =~ "^/appTwo" {
url.rewrite = ( "^/appTwo(/.*)$" => "/appTwo/public$1" )
fastcgi.server = ( "dispatch.fcgi" => (( "bin-path" ... )))
server.error-handler-404 = "/appTwo/dispatch.fcgi"
}
}}}
Updated by Anonymous about 19 years ago · 34 revisions