Hi all

We have some problem with  Win32, Apache 2.2.15 & mod_fcgid
no matter what we tried we can not make it work.
You can also google Win32, Apache 2.2.15 & mod_fcgid  and see more information.
To cut long story short the problem is that perl starts then exists
without running the script
after long check we located the problem inside mod_fcgid, however we
do not know of this is due to error in Perl itself or with mod_fcgid,
we where told it is somehow related to windows pipes

As we do not have experience with compiling and debuging apache &
mod_fcgid & perl we could not fix the problem
We believe that someone that knows this staff can fix the problem with
out too much trouble.
so we offer 2000NIS for someone to fix it.

We provide the information below as it shows where is the problem:

I have installed apache 2.2.15 with mod_fcgid on Windows XP SP3 and
Activestate Perl (tried both 5.12 & 5.8.9) tried the perl example
script in the mod_fcgid reference page but it is not working
I get this in error log

[Tue Dec 07 23:10:35 2010] [info] mod_fcgid: server
127.0.0.1:/usr/bin/perl.exe(5476) started [Tue Dec 07 23:10:35 2010]
[warn] [client 127.0.0.1] (OS 109)The pipe has been ended. : mod_fcgid
: get overlap result error [Tue Dec 07 23:10:35 2010] [error] [client
127.0.0.1] Premature end of script headers: f.pl [Tue Dec 07 23:10:35
2010] [error] [client 127.0.0.1] File does not exist:
C:/Apache2/htdocs/favicon.ico [Tue Dec 07 23:10:39 2010] [info]
mod_fcgid - infoneto: process /usr/bin/perl.exe(5476)
exit(communication error), return code 9

I double check everything including: The #!/usr/bin/perl.exe line The
mod_fcgid is loaded

When running the script as plain cgi it works When I turned to the
older mod_fastcgi it works just fine as a fastcgi (i.e. loads once
runs many times).

Using process monitor I can see that apache starts Perl but it Perl
exits almost instantly without even loading the Perl script I tried it
also on Apache 2.0.52 & 2.0.63 with older mod_fcgid and with Apache
2.2.15 with the newest mod_fcgid (2.3.6) but no luck
We cannot debug the script and as it runs fine using both CGI
and FastCGI I can only think that mod_fcgid does something else
obviously  the pipe communication has some kind of  problem
We actually compiled mod_fcgid and found the error is at line 378 at
fcgid_proc_win.c:
as marked bellow HERE IS THE ERROR
but as I do not know how to debug it I am looking for help

       /* it's ERROR_IO_PENDING */
        DWORD transferred;
        DWORD dwWaitResult
            = WaitForSingleObject(handle_info->overlap_read.hEvent,
                                  ipc_handle->communation_timeout * 10000);

        if (dwWaitResult == WAIT_OBJECT_0) {
            if (!GetOverlappedResult(handle_info->handle_pipe,
                                     &handle_info->overlap_read,
                                     &transferred, FALSE /* don't wait */ )
                || transferred == 0) {
                rv = apr_get_os_error();
                ap_log_rerror(APLOG_MARK, APLOG_WARNING, rv,
                              ipc_handle->request,
                              "mod_fcgid  : get overlap result
error"); // <---- HERE IS THE ERROR
                return rv;
            }

            *size = transferred;
            return APR_SUCCESS;
        } else {
            ap_log_rerror(APLOG_MARK, APLOG_WARNING, 0, ipc_handle->request,
                          "mod_fcgid: read timeout from pipe");
            return APR_ETIMEDOUT;
        }
_______________________________________________
Perl mailing list
[email protected]
http://mail.perl.org.il/mailman/listinfo/perl

Reply via email to