Hi everybody,
I'm currently using LWP to try and connect to an XML page via SSL. I do have to go through a proxy for name resolution since I'm connecting from a closed network.
I get this response:
HTTP/1.1 500 Server Error
Connection: close
Date: Wed, 16 May 2007 15:23:37 GMT
Server: NetCache appliance (NetApp/5.6.1D25DEBUG3)
Content-Length: 284
Content-Type: text/html
Client-Date: Wed, 16 May 2007 15:23:38 GMT
Client-Peer: 171.182.207.166:8080
Client-Response-Num: 1
Title: 500 Server Error
<HTML>
<HEAD><TITLE>500 Server Error</TITLE></HEAD>
<BODY>
<H1>Server Error</H1>
<H4>
The following error occurred:<P>
[code=PARENT_NEEDED] Unable to service this URL without parent cache.C
+ontact your system administrator.
</H4>
<HR>
Please contact the administrator.
</BODY>
</HTML>
Information on how to resolve this, especially regarding Perl, is scarce.
I'm using Perl 5.8.8, on a Solaris 10 system, and as far as I know, all the necessary packages for SSL support (Crypt::SSLeay and OpenSSL) are installed.
The code (cleansed of real world information):
use strict;
use LWP;
my $ua = LWP::UserAgent->new();
$ua->proxy(['http', 'https'], 'http://proxy:8080');
my $req = HTTP::Request->new(GET => 'http://www.sslsite.com');
my $res = $ua->request($req);
my $content = $res->as_string;
I've tested the functionality of the proxy hitting yahoo.com so I know I can reach the web, so I'm guessing there
IS an issue with the SSL Setup, i just don't know what to check.
Any help is much appreciated.
UPDATE:
After poking around some in the Crypt::SSLeay docs, I found that the proxy information needs to be provided through environment variables rather than to the UserAgent object as it is in my original code.
So:
$ENV{HTTPS_PROXY} = 'http://proxy';
$ENV{HTTPS_PROXY_USERNAME} = 'user';
$ENV{HTTPS_PROXY_PASSWORD} = 'pass';
Took care of everything.
dsb
This @ISA my( $cool ) %SIG
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.