I've written a small CGI::Application CMS that publishes content to flat files via. The file-type can be any that the designers decide, but generally it will be something that supports includes such as SSI or PHP. This is fine most of the time but occasionally I need to produce dynamic pages - e.g. a search result.
To do this, I generate the search result php/shtml page to the file system, and then request it from the web server using LWP: my $file = $self->get_value('cms_document_root') . "/" . $page; $self->logger->debug("Creating $file"); # write the results to the temporary file open(FH, ">$file") || die "Cannot create $file"; print FH $template->output(); close FH || die "Cannot close $file"; $self->logger->debug("Created $file"); # request the temporary file my $request_page = "http://" . $ENV{SERVER_NAME} . $self->get_value('cms_publish_url') . "/$page"; $self->logger->debug("request_page: $request_page"); my $agent = LWP::UserAgent->new; my $request = HTTP::Request->new(GET => $request_page); This works fine under standard CGI, but the LWP request times out under mod_perl. The temporary page name is random, so I know that it's not a file conflict. Have I missed something? I'm using Apache 1.3.31 and mod_perl 1.29 on Windows XP, but whatever I do has to also work under vanilla CGI. regards Dan Horne