Loading ...
Sorry, an error occurred while loading the content.

Re: [soaplite] httpd/mod_perl coredumps

Expand Messages
  • Juan Julian Merelo Guervos
    ... Right-on! It s also documented in the AxKit manuals. Sorry for not reading the RTFM. J -- jmerelo@geneura.ugr.es | jjmerelo@worldonline.es JJ Merelo
    Message 1 of 10 , Jun 8, 2001
    • 0 Attachment
      Paul Kulchenko wrote:
      >
      > Hi, Juan!
      >
      > It might be this (documented in SOAP/Transport/HTTP.pm):
      >
      > =item Apache is crashing with segfaults
      >
      > If using SOAP::Lite (or XML::Parser::Expat) in combination with
      > mod_perl
      > causes random segmentation faults in httpd processes try to configure
      > Apache with:
      >
      > RULE_EXPAT=no
      >
      > See http://archive.covalent.net/modperl/2000/04/0185.xml for more
      > details and lot of thanks to Robert Barta (rho@...) for
      > explaining this weird behavior.
      >
      > Hope it helps.
      >


      Right-on! It's also documented in the AxKit manuals. Sorry for not
      reading the RTFM.

      J

      --
      jmerelo@... | jjmerelo@...
      JJ Merelo | http://geneura.ugr.es/~jmerelo
      Grupo Geneura ---- Univ. Granada | http://www.geneura.org/
    • Eric Baller
      I ve been digging through the archive and this is the closest reference I can find. I m also getting the same unexpected EOF errors but I don t own the
      Message 2 of 10 , Nov 27, 2001
      • 0 Attachment
        I've been digging through the archive and this is the closest
        reference I can find.

        I'm also getting the same "unexpected EOF" errors but I don't own the
        server or the apache configuration.

        When I was on my own linux box, I was able to get everything I want
        to work properly (thanks to good documentation, support in this
        group, and some excellent software from Paul...)

        But when I move it up to my hosting company's machine (also linux), I
        get that "500..." error. I had to install a few modules since they
        didn't have SOAP::Lite or URI (I won't reveal who they are so as not
        to disgrace them ;^) but I got through that easy enough.

        Are there other approaches that might help besides asking them to
        change the apache configuration?

        Thanks,
        Eric

        --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
        > Hi, Juan!
        >
        > It might be this (documented in SOAP/Transport/HTTP.pm):
        >
        > =item Apache is crashing with segfaults
        >
        > If using SOAP::Lite (or XML::Parser::Expat) in combination with
        > mod_perl
        > causes random segmentation faults in httpd processes try to
        configure
        > Apache with:
        >
        > RULE_EXPAT=no
        >
        > See http://archive.covalent.net/modperl/2000/04/0185.xml for more
        > details and lot of thanks to Robert Barta (rho@b...) for
        > explaining this weird behavior.
        >
        > Hope it helps.
        >
        > Best wishes, Paul.
        >
        > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
        > > Hi,
        > > I'm trying to use SOAP::Lite with Apache 1.3.20 and mod_perl
        1.25;
        > > SOAP::Lite version is 0.50. It coredumps with this simple setup:
        > >
        > > -- server
        > > #!/usr/bin/perl -w
        > >
        > > use SOAP::Transport::HTTP;
        > >
        > > SOAP::Transport::HTTP::CGI
        > > -> dispatch_to('Eval')
        > > -> handle;
        > >
        > > package Eval;
        > >
        > > sub test {
        > > my $class =shift;
        > > my $msg = shift;
        > > return "Hola $msg";
        > > }
        > > -- client
        > > #!/usr/bin/perl -w
        > >
        > > use SOAP::Lite;
        > >
        > > my $soapResponse=
        SOAP::Lite
        > >
        > > ->
        > > uri
        ('http://www.geneura.org/Eval')
        > >
        > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
        > > -> test( "Pepelillo");
        > >
        > > print $soapResponse->result;
        > >
        > > ---
        > > Apache config:
        > > Alias /perl/ /home/jmerelo/apache/perl/
        > > <Location /perl>
        > > SetHandler perl-script
        > > PerlHandler Apache::Registry
        > > #PerlModule CGI SOAP::Lite
        > > PerlSendHeader On
        > > Options +ExecCGI
        > > </Location>
        > > --
        > >
        > > It coredumps with this error:
        > >
        > > mercurio:~/progs/ga-xsl$ ./SOAPtestclient.pl
        > > 500 unexpected EOF before status line seen
        > > at ./SOAPtestclient.pl line 5
        > >
        > > Any idea?
        > >
        > > J
        > >
        > > --
        > > jmerelo@g... | jjmerelo@w...
        > > JJ Merelo | http://geneura.ugr.es/~jmerelo
        > > Grupo Geneura ---- Univ. Granada | http://www.geneura.org/
        > >
        > > To unsubscribe from this group, send an email to:
        > > soaplite-unsubscribe@y...
        > >
        > >
        > >
        > > Your use of Yahoo! Groups is subject to
        > > http://docs.yahoo.com/info/terms/
        > >
        > >
        >
        >
        > __________________________________________________
        > Do You Yahoo!?
        > Get personalized email addresses from Yahoo! Mail - only $35
        > a year! http://personal.mail.yahoo.com/
      • Paul Kulchenko
        Hi, Eric! If you configuration is similar to discussed one (apache+mod_perl) first thing you may try is to disable XML::Parser and use only XML::Parser::Lite.
        Message 3 of 10 , Nov 27, 2001
        • 0 Attachment
          Hi, Eric!

          If you configuration is similar to discussed one (apache+mod_perl)
          first thing you may try is to disable XML::Parser and use only
          XML::Parser::Lite. You shouldn't have such problem in this case. You
          need to specify in your script:

          use SOAP::Lite;
          $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;

          (notice that this is not an absolute solution, since Lite version of
          parser has some limitations and it's slower because it's pure Perl)

          Are you using CGI- or mod_perl-based SOAP server? You shouldn't have
          this problem running your server as a CGI application (if you do it's
          not because of apache and Expat). You may have it if you run SOAP
          server as Apache::Registry or mod_perl application.

          Server-side code could shed some light. Sorry can't be more helpful.

          Best wishes, Paul.

          --- Eric Baller <eballer@...> wrote:
          > I've been digging through the archive and this is the closest
          > reference I can find.
          >
          > I'm also getting the same "unexpected EOF" errors but I don't own
          > the
          > server or the apache configuration.
          >
          > When I was on my own linux box, I was able to get everything I want
          >
          > to work properly (thanks to good documentation, support in this
          > group, and some excellent software from Paul...)
          >
          > But when I move it up to my hosting company's machine (also linux),
          > I
          > get that "500..." error. I had to install a few modules since they
          >
          > didn't have SOAP::Lite or URI (I won't reveal who they are so as
          > not
          > to disgrace them ;^) but I got through that easy enough.
          >
          > Are there other approaches that might help besides asking them to
          > change the apache configuration?
          >
          > Thanks,
          > Eric
          >
          > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
          > > Hi, Juan!
          > >
          > > It might be this (documented in SOAP/Transport/HTTP.pm):
          > >
          > > =item Apache is crashing with segfaults
          > >
          > > If using SOAP::Lite (or XML::Parser::Expat) in combination with
          > > mod_perl
          > > causes random segmentation faults in httpd processes try to
          > configure
          > > Apache with:
          > >
          > > RULE_EXPAT=no
          > >
          > > See http://archive.covalent.net/modperl/2000/04/0185.xml for more
          >
          > > details and lot of thanks to Robert Barta (rho@b...) for
          > > explaining this weird behavior.
          > >
          > > Hope it helps.
          > >
          > > Best wishes, Paul.
          > >
          > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
          > > > Hi,
          > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and mod_perl
          > 1.25;
          > > > SOAP::Lite version is 0.50. It coredumps with this simple
          > setup:
          > > >
          > > > -- server
          > > > #!/usr/bin/perl -w
          > > >
          > > > use SOAP::Transport::HTTP;
          > > >
          > > > SOAP::Transport::HTTP::CGI
          > > > -> dispatch_to('Eval')
          > > > -> handle;
          > > >
          > > > package Eval;
          > > >
          > > > sub test {
          > > > my $class =shift;
          > > > my $msg = shift;
          > > > return "Hola $msg";
          > > > }
          > > > -- client
          > > > #!/usr/bin/perl -w
          > > >
          > > > use SOAP::Lite;
          > > >
          > > > my $soapResponse=
          > SOAP::Lite
          > > >
          > > > ->
          > > > uri
          > ('http://www.geneura.org/Eval')
          > > >
          > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
          > > > -> test( "Pepelillo");
          > > >
          > > > print $soapResponse->result;
          > > >
          > > > ---
          > > > Apache config:
          > > > Alias /perl/ /home/jmerelo/apache/perl/
          > > > <Location /perl>
          > > > SetHandler perl-script
          > > > PerlHandler Apache::Registry
          > > > #PerlModule CGI SOAP::Lite
          > > > PerlSendHeader On
          > > > Options +ExecCGI
          > > > </Location>
          > > > --
          > > >
          > > > It coredumps with this error:
          > > >
          > > > mercurio:~/progs/ga-xsl$ ./SOAPtestclient.pl
          > > > 500 unexpected EOF before status line seen
          > > > at ./SOAPtestclient.pl line 5
          > > >
          > > > Any idea?
          > > >
          > > > J
          > > >
          > > > --
          > > > jmerelo@g... | jjmerelo@w...
          > > > JJ Merelo |
          > http://geneura.ugr.es/~jmerelo
          > > > Grupo Geneura ---- Univ. Granada | http://www.geneura.org/
          > > >
          > > > To unsubscribe from this group, send an email to:
          > > > soaplite-unsubscribe@y...
          > > >
          > > >
          > > >
          > > > Your use of Yahoo! Groups is subject to
          > > > http://docs.yahoo.com/info/terms/
          > > >
          > > >
          > >
          > >
          > > __________________________________________________
          > > Do You Yahoo!?
          > > Get personalized email addresses from Yahoo! Mail - only $35
          > > a year! http://personal.mail.yahoo.com/
          >
          >
          > ------------------------ Yahoo! Groups Sponsor
          >
          > To unsubscribe from this group, send an email to:
          > soaplite-unsubscribe@yahoogroups.com
          >
          >
          >
          > Your use of Yahoo! Groups is subject to
          > http://docs.yahoo.com/info/terms/
          >
          >


          __________________________________________________
          Do You Yahoo!?
          Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
          http://geocities.yahoo.com/ps/info1
        • Eric Baller
          Actually, it doesn t look like I have to worry about mod_perl. The web server doesn t list it, but responds as follows: Server: Apache/1.3.20 (Unix)
          Message 4 of 10 , Nov 28, 2001
          • 0 Attachment
            Actually, it doesn't look like I have to worry about mod_perl. The web
            server doesn't list it, but responds as follows:

            Server: Apache/1.3.20 (Unix) ApacheJServ/1.1.2 PHP/4.0.4pl1
            FrontPage/5.0.2.2510 Rewrit/1.1a
            X-Powered-By: PHP/4.0.4pl1

            I've tried to make sure it wasn't anything fancy I was doing, so I've worked
            my way down to some server side code taken from one of your examples (which
            were very helpful, by the way):
            --------- hi.cgi ----------
            #!/usr/bin/perl -Tw

            use lib '/home/eballer/lib';
            use SOAP::Transport::HTTP;

            SOAP::Transport::HTTP::CGI
            -> dispatch_to('Demo')
            -> handle;

            package Demo;

            sub HelloWorld {
            return "Hello, world";
            }

            1;
            ------------------------------

            and the client code is:
            -------- hibye.pl ---------
            #!/usr/bin/perl -Tw

            use SOAP::Lite;

            my $s1=SOAP::Lite
            ->uri('Demo')
            ->proxy('http://localhost/cgi-bin/soap/hi.cgi');

            my $result = $s1->HelloWorld();

            unless ($result->fault) {
            print $result->result();
            } else {
            print join ', ',
            $result->faultcode,
            $result->faultstring;
            }
            ---------------------------

            That works fine on my local machine. Then I try replacing "localhost" with
            the web URL, I get the following error from the client:

            500 unexpected EOF before status line seen
            at ./hi.pl line 9

            On the server, I get an access log entry which looks like:
            ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-" "SOAP::Lite/Perl/0.51"

            Does that help more?

            Thanks!

            -----Original Message-----
            From: Paul Kulchenko [mailto:paulclinger@...]
            Sent: Wednesday, November 28, 2001 1:23 AM
            To: Eric Baller; soaplite@yahoogroups.com
            Subject: Re: [soaplite] unexpected EOF


            Hi, Eric!

            If you configuration is similar to discussed one (apache+mod_perl)
            first thing you may try is to disable XML::Parser and use only
            XML::Parser::Lite. You shouldn't have such problem in this case. You
            need to specify in your script:

            use SOAP::Lite;
            $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;

            (notice that this is not an absolute solution, since Lite version of
            parser has some limitations and it's slower because it's pure Perl)

            Are you using CGI- or mod_perl-based SOAP server? You shouldn't have
            this problem running your server as a CGI application (if you do it's
            not because of apache and Expat). You may have it if you run SOAP
            server as Apache::Registry or mod_perl application.

            Server-side code could shed some light. Sorry can't be more helpful.

            Best wishes, Paul.

            --- Eric Baller <eballer@...> wrote:
            > I've been digging through the archive and this is the closest
            > reference I can find.
            >
            > I'm also getting the same "unexpected EOF" errors but I don't own
            > the
            > server or the apache configuration.
            >
            > When I was on my own linux box, I was able to get everything I want
            >
            > to work properly (thanks to good documentation, support in this
            > group, and some excellent software from Paul...)
            >
            > But when I move it up to my hosting company's machine (also linux),
            > I
            > get that "500..." error. I had to install a few modules since they
            >
            > didn't have SOAP::Lite or URI (I won't reveal who they are so as
            > not
            > to disgrace them ;^) but I got through that easy enough.
            >
            > Are there other approaches that might help besides asking them to
            > change the apache configuration?
            >
            > Thanks,
            > Eric
            >
            > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
            > > Hi, Juan!
            > >
            > > It might be this (documented in SOAP/Transport/HTTP.pm):
            > >
            > > =item Apache is crashing with segfaults
            > >
            > > If using SOAP::Lite (or XML::Parser::Expat) in combination with
            > > mod_perl
            > > causes random segmentation faults in httpd processes try to
            > configure
            > > Apache with:
            > >
            > > RULE_EXPAT=no
            > >
            > > See http://archive.covalent.net/modperl/2000/04/0185.xml for more
            >
            > > details and lot of thanks to Robert Barta (rho@b...) for
            > > explaining this weird behavior.
            > >
            > > Hope it helps.
            > >
            > > Best wishes, Paul.
            > >
            > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
            > > > Hi,
            > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and mod_perl
            > 1.25;
            > > > SOAP::Lite version is 0.50. It coredumps with this simple
            > setup:
            > > >
            > > > -- server
            > > > #!/usr/bin/perl -w
            > > >
            > > > use SOAP::Transport::HTTP;
            > > >
            > > > SOAP::Transport::HTTP::CGI
            > > > -> dispatch_to('Eval')
            > > > -> handle;
            > > >
            > > > package Eval;
            > > >
            > > > sub test {
            > > > my $class =shift;
            > > > my $msg = shift;
            > > > return "Hola $msg";
            > > > }
            > > > -- client
            > > > #!/usr/bin/perl -w
            > > >
            > > > use SOAP::Lite;
            > > >
            > > > my $soapResponse=
            > SOAP::Lite
            > > >
            > > > ->
            > > > uri
            > ('http://www.geneura.org/Eval')
            > > >
            > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
            > > > -> test( "Pepelillo");
            > > >
            > > > print $soapResponse->result;
            > > >
            > > > ---
            > > > Apache config:
            > > > Alias /perl/ /home/jmerelo/apache/perl/
            > > > <Location /perl>
            > > > SetHandler perl-script
            > > > PerlHandler Apache::Registry
            > > > #PerlModule CGI SOAP::Lite
            > > > PerlSendHeader On
            > > > Options +ExecCGI
            > > > </Location>
            > > > --
            > > >
            > > > It coredumps with this error:
            > > >
            > > > mercurio:~/progs/ga-xsl$ ./SOAPtestclient.pl
            > > > 500 unexpected EOF before status line seen
            > > > at ./SOAPtestclient.pl line 5
            > > >
            > > > Any idea?
            > > >
            > > > J
            > > >
            > > > --
            > > > jmerelo@g... | jjmerelo@w...
            > > > JJ Merelo |
            > http://geneura.ugr.es/~jmerelo
            > > > Grupo Geneura ---- Univ. Granada | http://www.geneura.org/
            > > >
            > > > To unsubscribe from this group, send an email to:
            > > > soaplite-unsubscribe@y...
            > > >
            > > >
            > > >
            > > > Your use of Yahoo! Groups is subject to
            > > > http://docs.yahoo.com/info/terms/
            > > >
            > > >
            > >
            > >
            > > __________________________________________________
            > > Do You Yahoo!?
            > > Get personalized email addresses from Yahoo! Mail - only $35
            > > a year! http://personal.mail.yahoo.com/
            >
            >
            > ------------------------ Yahoo! Groups Sponsor
            >
            > To unsubscribe from this group, send an email to:
            > soaplite-unsubscribe@yahoogroups.com
            >
            >
            >
            > Your use of Yahoo! Groups is subject to
            > http://docs.yahoo.com/info/terms/
            >
            >


            __________________________________________________
            Do You Yahoo!?
            Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month.
            http://geocities.yahoo.com/ps/info1
          • Paul Kulchenko
            Hi, Eric! ... this one looks very suspicious. I saw 200 - in my log file only when I tested my CGI scripts with Apache::Registry without PerlSendHeader On .
            Message 5 of 10 , Nov 28, 2001
            • 0 Attachment
              Hi, Eric!

              > 500 unexpected EOF before status line seen
              > at ./hi.pl line 9
              >
              > On the server, I get an access log entry which looks like:
              > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
              > "SOAP::Lite/Perl/0.51"
              this one looks very suspicious. I saw "200 -" in my log file only
              when I tested my CGI scripts with Apache::Registry without
              "PerlSendHeader On". I just replied about it today:
              [http://discuss.develop.com/archives/wa.exe?A2=ind0111&L=soap&F=&S=&P=23882]

              You may switch on debug info on client side to see real response from
              server:

              use SOAP::Lite on_debug => sub { print @_ };

              If you use Apache::Registry then "PerlSendHeader On" may solve the
              problem. If not, debug output may help.

              Did you try to run the same script from cgi-bin/ directory instead of
              cgi-bin/soap/? Did you try to hit that URL from webbrowser (you
              should get "405 Bad Method" error)? Let me know if you still can't
              fix the problem.

              Best wishes, Paul.

              --- Eric Baller <eballer@...> wrote:
              > Actually, it doesn't look like I have to worry about mod_perl. The
              > web
              > server doesn't list it, but responds as follows:
              >
              > Server: Apache/1.3.20 (Unix) ApacheJServ/1.1.2 PHP/4.0.4pl1
              > FrontPage/5.0.2.2510 Rewrit/1.1a
              > X-Powered-By: PHP/4.0.4pl1
              >
              > I've tried to make sure it wasn't anything fancy I was doing, so
              > I've worked
              > my way down to some server side code taken from one of your
              > examples (which
              > were very helpful, by the way):
              > --------- hi.cgi ----------
              > #!/usr/bin/perl -Tw
              >
              > use lib '/home/eballer/lib';
              > use SOAP::Transport::HTTP;
              >
              > SOAP::Transport::HTTP::CGI
              > -> dispatch_to('Demo')
              > -> handle;
              >
              > package Demo;
              >
              > sub HelloWorld {
              > return "Hello, world";
              > }
              >
              > 1;
              > ------------------------------
              >
              > and the client code is:
              > -------- hibye.pl ---------
              > #!/usr/bin/perl -Tw
              >
              > use SOAP::Lite;
              >
              > my $s1=SOAP::Lite
              > ->uri('Demo')
              > ->proxy('http://localhost/cgi-bin/soap/hi.cgi');
              >
              > my $result = $s1->HelloWorld();
              >
              > unless ($result->fault) {
              > print $result->result();
              > } else {
              > print join ', ',
              > $result->faultcode,
              > $result->faultstring;
              > }
              > ---------------------------
              >
              > That works fine on my local machine. Then I try replacing
              > "localhost" with
              > the web URL, I get the following error from the client:
              >
              > 500 unexpected EOF before status line seen
              > at ./hi.pl line 9
              >
              > On the server, I get an access log entry which looks like:
              > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
              > "SOAP::Lite/Perl/0.51"
              >
              > Does that help more?
              >
              > Thanks!
              >
              > -----Original Message-----
              > From: Paul Kulchenko [mailto:paulclinger@...]
              > Sent: Wednesday, November 28, 2001 1:23 AM
              > To: Eric Baller; soaplite@yahoogroups.com
              > Subject: Re: [soaplite] unexpected EOF
              >
              >
              > Hi, Eric!
              >
              > If you configuration is similar to discussed one (apache+mod_perl)
              > first thing you may try is to disable XML::Parser and use only
              > XML::Parser::Lite. You shouldn't have such problem in this case.
              > You
              > need to specify in your script:
              >
              > use SOAP::Lite;
              > $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;
              >
              > (notice that this is not an absolute solution, since Lite version
              > of
              > parser has some limitations and it's slower because it's pure Perl)
              >
              > Are you using CGI- or mod_perl-based SOAP server? You shouldn't
              > have
              > this problem running your server as a CGI application (if you do
              > it's
              > not because of apache and Expat). You may have it if you run SOAP
              > server as Apache::Registry or mod_perl application.
              >
              > Server-side code could shed some light. Sorry can't be more
              > helpful.
              >
              > Best wishes, Paul.
              >
              > --- Eric Baller <eballer@...> wrote:
              > > I've been digging through the archive and this is the closest
              > > reference I can find.
              > >
              > > I'm also getting the same "unexpected EOF" errors but I don't own
              > > the
              > > server or the apache configuration.
              > >
              > > When I was on my own linux box, I was able to get everything I
              > want
              > >
              > > to work properly (thanks to good documentation, support in this
              > > group, and some excellent software from Paul...)
              > >
              > > But when I move it up to my hosting company's machine (also
              > linux),
              > > I
              > > get that "500..." error. I had to install a few modules since
              > they
              > >
              > > didn't have SOAP::Lite or URI (I won't reveal who they are so as
              > > not
              > > to disgrace them ;^) but I got through that easy enough.
              > >
              > > Are there other approaches that might help besides asking them to
              > > change the apache configuration?
              > >
              > > Thanks,
              > > Eric
              > >
              > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
              > > > Hi, Juan!
              > > >
              > > > It might be this (documented in SOAP/Transport/HTTP.pm):
              > > >
              > > > =item Apache is crashing with segfaults
              > > >
              > > > If using SOAP::Lite (or XML::Parser::Expat) in combination with
              > > > mod_perl
              > > > causes random segmentation faults in httpd processes try to
              > > configure
              > > > Apache with:
              > > >
              > > > RULE_EXPAT=no
              > > >
              > > > See http://archive.covalent.net/modperl/2000/04/0185.xml for
              > more
              > >
              > > > details and lot of thanks to Robert Barta (rho@b...) for
              > > > explaining this weird behavior.
              > > >
              > > > Hope it helps.
              > > >
              > > > Best wishes, Paul.
              > > >
              > > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
              > > > > Hi,
              > > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and mod_perl
              > > 1.25;
              > > > > SOAP::Lite version is 0.50. It coredumps with this simple
              > > setup:
              > > > >
              > > > > -- server
              > > > > #!/usr/bin/perl -w
              > > > >
              > > > > use SOAP::Transport::HTTP;
              > > > >
              > > > > SOAP::Transport::HTTP::CGI
              > > > > -> dispatch_to('Eval')
              > > > > -> handle;
              > > > >
              > > > > package Eval;
              > > > >
              > > > > sub test {
              > > > > my $class =shift;
              > > > > my $msg = shift;
              > > > > return "Hola $msg";
              > > > > }
              > > > > -- client
              > > > > #!/usr/bin/perl -w
              > > > >
              > > > > use SOAP::Lite;
              > > > >
              > > > > my $soapResponse=
              > > SOAP::Lite
              > > > >
              > > > > ->
              > > > > uri
              > > ('http://www.geneura.org/Eval')
              > > > >
              > > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
              > > > > -> test( "Pepelillo");
              > > > >
              > > > > print $soapResponse->result;
              > > > >
              > > > > ---
              > > > > Apache config:
              > > > > Alias /perl/ /home/jmerelo/apache/perl/
              > > > > <Location /perl>
              >
              === message truncated ===


              __________________________________________________
              Do You Yahoo!?
              Make a great connection at Yahoo! Personals.
              http://personals.yahoo.com
            • Eric Baller
              Arghhh! Finally figured it out. I still don t know *why*, but at least I figured out the cause: taint checking on the server. perl -Tw works on my local box,
              Message 6 of 10 , Nov 29, 2001
              • 0 Attachment
                Arghhh! Finally figured it out.

                I still don't know *why*, but at least I figured out the cause: taint
                checking on the server.

                perl -Tw works on my local box, and I find it a useful check, but for
                some reason it doesn't work on my virtually hosted domain. Both are
                linux/apache and I didn't see anything funny in the httpd.conf.

                Oh well. The fix was to change the first line of the .cgi file
                from: #!/usr/bin/perl -Tw
                to: #!/usr/bin/perl -w

                Thank you Paul and group for your indulgence. I hope this at least
                helps someone else some day...

                Eric

                --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
                > Hi, Eric!
                >
                > > 500 unexpected EOF before status line seen
                > > at ./hi.pl line 9
                > >
                > > On the server, I get an access log entry which looks like:
                > > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
                > > "SOAP::Lite/Perl/0.51"
                > this one looks very suspicious. I saw "200 -" in my log file only
                > when I tested my CGI scripts with Apache::Registry without
                > "PerlSendHeader On". I just replied about it today:
                > [http://discuss.develop.com/archives/wa.exe?
                A2=ind0111&L=soap&F=&S=&P=23882]
                >
                > You may switch on debug info on client side to see real response
                from
                > server:
                >
                > use SOAP::Lite on_debug => sub { print @_ };
                >
                > If you use Apache::Registry then "PerlSendHeader On" may solve the
                > problem. If not, debug output may help.
                >
                > Did you try to run the same script from cgi-bin/ directory instead
                of
                > cgi-bin/soap/? Did you try to hit that URL from webbrowser (you
                > should get "405 Bad Method" error)? Let me know if you still can't
                > fix the problem.
                >
                > Best wishes, Paul.
                >
                > --- Eric Baller <eballer@q...> wrote:
                > > Actually, it doesn't look like I have to worry about mod_perl.
                The
                > > web
                > > server doesn't list it, but responds as follows:
                > >
                > > Server: Apache/1.3.20 (Unix) ApacheJServ/1.1.2 PHP/4.0.4pl1
                > > FrontPage/5.0.2.2510 Rewrit/1.1a
                > > X-Powered-By: PHP/4.0.4pl1
                > >
                > > I've tried to make sure it wasn't anything fancy I was doing, so
                > > I've worked
                > > my way down to some server side code taken from one of your
                > > examples (which
                > > were very helpful, by the way):
                > > --------- hi.cgi ----------
                > > #!/usr/bin/perl -Tw
                > >
                > > use lib '/home/eballer/lib';
                > > use SOAP::Transport::HTTP;
                > >
                > > SOAP::Transport::HTTP::CGI
                > > -> dispatch_to('Demo')
                > > -> handle;
                > >
                > > package Demo;
                > >
                > > sub HelloWorld {
                > > return "Hello, world";
                > > }
                > >
                > > 1;
                > > ------------------------------
                > >
                > > and the client code is:
                > > -------- hibye.pl ---------
                > > #!/usr/bin/perl -Tw
                > >
                > > use SOAP::Lite;
                > >
                > > my $s1=SOAP::Lite
                > > ->uri('Demo')
                > > ->proxy('http://localhost/cgi-bin/soap/hi.cgi');
                > >
                > > my $result = $s1->HelloWorld();
                > >
                > > unless ($result->fault) {
                > > print $result->result();
                > > } else {
                > > print join ', ',
                > > $result->faultcode,
                > > $result->faultstring;
                > > }
                > > ---------------------------
                > >
                > > That works fine on my local machine. Then I try replacing
                > > "localhost" with
                > > the web URL, I get the following error from the client:
                > >
                > > 500 unexpected EOF before status line seen
                > > at ./hi.pl line 9
                > >
                > > On the server, I get an access log entry which looks like:
                > > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
                > > "SOAP::Lite/Perl/0.51"
                > >
                > > Does that help more?
                > >
                > > Thanks!
                > >
                > > -----Original Message-----
                > > From: Paul Kulchenko [mailto:paulclinger@y...]
                > > Sent: Wednesday, November 28, 2001 1:23 AM
                > > To: Eric Baller; soaplite@y...
                > > Subject: Re: [soaplite] unexpected EOF
                > >
                > >
                > > Hi, Eric!
                > >
                > > If you configuration is similar to discussed one (apache+mod_perl)
                > > first thing you may try is to disable XML::Parser and use only
                > > XML::Parser::Lite. You shouldn't have such problem in this case.
                > > You
                > > need to specify in your script:
                > >
                > > use SOAP::Lite;
                > > $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;
                > >
                > > (notice that this is not an absolute solution, since Lite version
                > > of
                > > parser has some limitations and it's slower because it's pure
                Perl)
                > >
                > > Are you using CGI- or mod_perl-based SOAP server? You shouldn't
                > > have
                > > this problem running your server as a CGI application (if you do
                > > it's
                > > not because of apache and Expat). You may have it if you run SOAP
                > > server as Apache::Registry or mod_perl application.
                > >
                > > Server-side code could shed some light. Sorry can't be more
                > > helpful.
                > >
                > > Best wishes, Paul.
                > >
                > > --- Eric Baller <eballer@q...> wrote:
                > > > I've been digging through the archive and this is the closest
                > > > reference I can find.
                > > >
                > > > I'm also getting the same "unexpected EOF" errors but I don't
                own
                > > > the
                > > > server or the apache configuration.
                > > >
                > > > When I was on my own linux box, I was able to get everything I
                > > want
                > > >
                > > > to work properly (thanks to good documentation, support in this
                > > > group, and some excellent software from Paul...)
                > > >
                > > > But when I move it up to my hosting company's machine (also
                > > linux),
                > > > I
                > > > get that "500..." error. I had to install a few modules since
                > > they
                > > >
                > > > didn't have SOAP::Lite or URI (I won't reveal who they are so as
                > > > not
                > > > to disgrace them ;^) but I got through that easy enough.
                > > >
                > > > Are there other approaches that might help besides asking them
                to
                > > > change the apache configuration?
                > > >
                > > > Thanks,
                > > > Eric
                > > >
                > > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
                > > > > Hi, Juan!
                > > > >
                > > > > It might be this (documented in SOAP/Transport/HTTP.pm):
                > > > >
                > > > > =item Apache is crashing with segfaults
                > > > >
                > > > > If using SOAP::Lite (or XML::Parser::Expat) in combination
                with
                > > > > mod_perl
                > > > > causes random segmentation faults in httpd processes try to
                > > > configure
                > > > > Apache with:
                > > > >
                > > > > RULE_EXPAT=no
                > > > >
                > > > > See http://archive.covalent.net/modperl/2000/04/0185.xml for
                > > more
                > > >
                > > > > details and lot of thanks to Robert Barta (rho@b...) for
                > > > > explaining this weird behavior.
                > > > >
                > > > > Hope it helps.
                > > > >
                > > > > Best wishes, Paul.
                > > > >
                > > > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
                > > > > > Hi,
                > > > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and
                mod_perl
                > > > 1.25;
                > > > > > SOAP::Lite version is 0.50. It coredumps with this simple
                > > > setup:
                > > > > >
                > > > > > -- server
                > > > > > #!/usr/bin/perl -w
                > > > > >
                > > > > > use SOAP::Transport::HTTP;
                > > > > >
                > > > > > SOAP::Transport::HTTP::CGI
                > > > > > -> dispatch_to('Eval')
                > > > > > -> handle;
                > > > > >
                > > > > > package Eval;
                > > > > >
                > > > > > sub test {
                > > > > > my $class =shift;
                > > > > > my $msg = shift;
                > > > > > return "Hola $msg";
                > > > > > }
                > > > > > -- client
                > > > > > #!/usr/bin/perl -w
                > > > > >
                > > > > > use SOAP::Lite;
                > > > > >
                > > > > > my $soapResponse=
                > > > SOAP::Lite
                > > > > >
                > > > > > ->
                > > > > > uri
                > > > ('http://www.geneura.org/Eval')
                > > > > >
                > > > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
                > > > > > -> test( "Pepelillo");
                > > > > >
                > > > > > print $soapResponse->result;
                > > > > >
                > > > > > ---
                > > > > > Apache config:
                > > > > > Alias /perl/ /home/jmerelo/apache/perl/
                > > > > > <Location /perl>
                > >
                > === message truncated ===
                >
                >
                > __________________________________________________
                > Do You Yahoo!?
                > Make a great connection at Yahoo! Personals.
                > http://personals.yahoo.com
              • Chris Davies
                Ah. Yes, well spotted! Unfortunately you can t specify -T on the command line under mod_perl, since perl s already running and it can t enable the taint
                Message 7 of 10 , Dec 4, 2001
                • 0 Attachment
                  Ah. Yes, well spotted!

                  Unfortunately you can't specify -T on the "command line" under mod_perl,
                  since perl's already running and it can't enable the taint checking except
                  when it starts. There are two solutions:
                  (a) don't run with -T
                  (b) enable perl taint checking as part of the mod_perl / Apache
                  configuration (no, I can't remember how, though)

                  Try this to see the error:

                  cat <<! >xxx.pl
                  #!/usr/bin/perl -wT
                  print "Hello, world\n";
                  !
                  perl xxx.pl

                  Chris
                  --
                  Chris Davies, Manheim Online
                  Tel. 0113 393-2004 Fax. 0870 444-0482. Mobile 07778 199069


                  -----Original Message-----
                  From: Eric Baller [mailto:eballer@...]
                  Sent: Friday, November 30, 2001 3:32 AM
                  To: soaplite@yahoogroups.com
                  Subject: [soaplite] Re: unexpected EOF


                  Arghhh! Finally figured it out.

                  I still don't know *why*, but at least I figured out the cause: taint
                  checking on the server.

                  perl -Tw works on my local box, and I find it a useful check, but for
                  some reason it doesn't work on my virtually hosted domain. Both are
                  linux/apache and I didn't see anything funny in the httpd.conf.

                  Oh well. The fix was to change the first line of the .cgi file
                  from: #!/usr/bin/perl -Tw
                  to: #!/usr/bin/perl -w

                  Thank you Paul and group for your indulgence. I hope this at least
                  helps someone else some day...

                  Eric

                  --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
                  > Hi, Eric!
                  >
                  > > 500 unexpected EOF before status line seen
                  > > at ./hi.pl line 9
                  > >
                  > > On the server, I get an access log entry which looks like:
                  > > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
                  > > "SOAP::Lite/Perl/0.51"
                  > this one looks very suspicious. I saw "200 -" in my log file only
                  > when I tested my CGI scripts with Apache::Registry without
                  > "PerlSendHeader On". I just replied about it today:
                  > [http://discuss.develop.com/archives/wa.exe?
                  A2=ind0111&L=soap&F=&S=&P=23882]
                  >
                  > You may switch on debug info on client side to see real response
                  from
                  > server:
                  >
                  > use SOAP::Lite on_debug => sub { print @_ };
                  >
                  > If you use Apache::Registry then "PerlSendHeader On" may solve the
                  > problem. If not, debug output may help.
                  >
                  > Did you try to run the same script from cgi-bin/ directory instead
                  of
                  > cgi-bin/soap/? Did you try to hit that URL from webbrowser (you
                  > should get "405 Bad Method" error)? Let me know if you still can't
                  > fix the problem.
                  >
                  > Best wishes, Paul.
                  >
                  > --- Eric Baller <eballer@q...> wrote:
                  > > Actually, it doesn't look like I have to worry about mod_perl.
                  The
                  > > web
                  > > server doesn't list it, but responds as follows:
                  > >
                  > > Server: Apache/1.3.20 (Unix) ApacheJServ/1.1.2 PHP/4.0.4pl1
                  > > FrontPage/5.0.2.2510 Rewrit/1.1a
                  > > X-Powered-By: PHP/4.0.4pl1
                  > >
                  > > I've tried to make sure it wasn't anything fancy I was doing, so
                  > > I've worked
                  > > my way down to some server side code taken from one of your
                  > > examples (which
                  > > were very helpful, by the way):
                  > > --------- hi.cgi ----------
                  > > #!/usr/bin/perl -Tw
                  > >
                  > > use lib '/home/eballer/lib';
                  > > use SOAP::Transport::HTTP;
                  > >
                  > > SOAP::Transport::HTTP::CGI
                  > > -> dispatch_to('Demo')
                  > > -> handle;
                  > >
                  > > package Demo;
                  > >
                  > > sub HelloWorld {
                  > > return "Hello, world";
                  > > }
                  > >
                  > > 1;
                  > > ------------------------------
                  > >
                  > > and the client code is:
                  > > -------- hibye.pl ---------
                  > > #!/usr/bin/perl -Tw
                  > >
                  > > use SOAP::Lite;
                  > >
                  > > my $s1=SOAP::Lite
                  > > ->uri('Demo')
                  > > ->proxy('http://localhost/cgi-bin/soap/hi.cgi');
                  > >
                  > > my $result = $s1->HelloWorld();
                  > >
                  > > unless ($result->fault) {
                  > > print $result->result();
                  > > } else {
                  > > print join ', ',
                  > > $result->faultcode,
                  > > $result->faultstring;
                  > > }
                  > > ---------------------------
                  > >
                  > > That works fine on my local machine. Then I try replacing
                  > > "localhost" with
                  > > the web URL, I get the following error from the client:
                  > >
                  > > 500 unexpected EOF before status line seen
                  > > at ./hi.pl line 9
                  > >
                  > > On the server, I get an access log entry which looks like:
                  > > ..."POST /cgi-bin/soap/hi.cgi HTTP/1.0" 200 - "-"
                  > > "SOAP::Lite/Perl/0.51"
                  > >
                  > > Does that help more?
                  > >
                  > > Thanks!
                  > >
                  > > -----Original Message-----
                  > > From: Paul Kulchenko [mailto:paulclinger@y...]
                  > > Sent: Wednesday, November 28, 2001 1:23 AM
                  > > To: Eric Baller; soaplite@y...
                  > > Subject: Re: [soaplite] unexpected EOF
                  > >
                  > >
                  > > Hi, Eric!
                  > >
                  > > If you configuration is similar to discussed one (apache+mod_perl)
                  > > first thing you may try is to disable XML::Parser and use only
                  > > XML::Parser::Lite. You shouldn't have such problem in this case.
                  > > You
                  > > need to specify in your script:
                  > >
                  > > use SOAP::Lite;
                  > > $SOAP::Constants::DO_NOT_USE_XML_PARSER = 1;
                  > >
                  > > (notice that this is not an absolute solution, since Lite version
                  > > of
                  > > parser has some limitations and it's slower because it's pure
                  Perl)
                  > >
                  > > Are you using CGI- or mod_perl-based SOAP server? You shouldn't
                  > > have
                  > > this problem running your server as a CGI application (if you do
                  > > it's
                  > > not because of apache and Expat). You may have it if you run SOAP
                  > > server as Apache::Registry or mod_perl application.
                  > >
                  > > Server-side code could shed some light. Sorry can't be more
                  > > helpful.
                  > >
                  > > Best wishes, Paul.
                  > >
                  > > --- Eric Baller <eballer@q...> wrote:
                  > > > I've been digging through the archive and this is the closest
                  > > > reference I can find.
                  > > >
                  > > > I'm also getting the same "unexpected EOF" errors but I don't
                  own
                  > > > the
                  > > > server or the apache configuration.
                  > > >
                  > > > When I was on my own linux box, I was able to get everything I
                  > > want
                  > > >
                  > > > to work properly (thanks to good documentation, support in this
                  > > > group, and some excellent software from Paul...)
                  > > >
                  > > > But when I move it up to my hosting company's machine (also
                  > > linux),
                  > > > I
                  > > > get that "500..." error. I had to install a few modules since
                  > > they
                  > > >
                  > > > didn't have SOAP::Lite or URI (I won't reveal who they are so as
                  > > > not
                  > > > to disgrace them ;^) but I got through that easy enough.
                  > > >
                  > > > Are there other approaches that might help besides asking them
                  to
                  > > > change the apache configuration?
                  > > >
                  > > > Thanks,
                  > > > Eric
                  > > >
                  > > > --- In soaplite@y..., Paul Kulchenko <paulclinger@y...> wrote:
                  > > > > Hi, Juan!
                  > > > >
                  > > > > It might be this (documented in SOAP/Transport/HTTP.pm):
                  > > > >
                  > > > > =item Apache is crashing with segfaults
                  > > > >
                  > > > > If using SOAP::Lite (or XML::Parser::Expat) in combination
                  with
                  > > > > mod_perl
                  > > > > causes random segmentation faults in httpd processes try to
                  > > > configure
                  > > > > Apache with:
                  > > > >
                  > > > > RULE_EXPAT=no
                  > > > >
                  > > > > See http://archive.covalent.net/modperl/2000/04/0185.xml for
                  > > more
                  > > >
                  > > > > details and lot of thanks to Robert Barta (rho@b...) for
                  > > > > explaining this weird behavior.
                  > > > >
                  > > > > Hope it helps.
                  > > > >
                  > > > > Best wishes, Paul.
                  > > > >
                  > > > > --- Juan Julian Merelo Guervos <jmerelo@g...> wrote:
                  > > > > > Hi,
                  > > > > > I'm trying to use SOAP::Lite with Apache 1.3.20 and
                  mod_perl
                  > > > 1.25;
                  > > > > > SOAP::Lite version is 0.50. It coredumps with this simple
                  > > > setup:
                  > > > > >
                  > > > > > -- server
                  > > > > > #!/usr/bin/perl -w
                  > > > > >
                  > > > > > use SOAP::Transport::HTTP;
                  > > > > >
                  > > > > > SOAP::Transport::HTTP::CGI
                  > > > > > -> dispatch_to('Eval')
                  > > > > > -> handle;
                  > > > > >
                  > > > > > package Eval;
                  > > > > >
                  > > > > > sub test {
                  > > > > > my $class =shift;
                  > > > > > my $msg = shift;
                  > > > > > return "Hola $msg";
                  > > > > > }
                  > > > > > -- client
                  > > > > > #!/usr/bin/perl -w
                  > > > > >
                  > > > > > use SOAP::Lite;
                  > > > > >
                  > > > > > my $soapResponse=
                  > > > SOAP::Lite
                  > > > > >
                  > > > > > ->
                  > > > > > uri
                  > > > ('http://www.geneura.org/Eval')
                  > > > > >
                  > > > > > -> proxy("http://localhost:8080/perl/SOAPtest.pl")
                  > > > > > -> test( "Pepelillo");
                  > > > > >
                  > > > > > print $soapResponse->result;
                  > > > > >
                  > > > > > ---
                  > > > > > Apache config:
                  > > > > > Alias /perl/ /home/jmerelo/apache/perl/
                  > > > > > <Location /perl>
                  > >
                  > === message truncated ===
                  >
                  >
                  > __________________________________________________
                  > Do You Yahoo!?
                  > Make a great connection at Yahoo! Personals.
                  > http://personals.yahoo.com



                  To unsubscribe from this group, send an email to:
                  soaplite-unsubscribe@yahoogroups.com



                  Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
                Your message has been successfully submitted and would be delivered to recipients shortly.