- assigned_to: nobody --> kevindication
I'm stuck behind a Squid proxy. Things work OK when I
just monitor an auction, but if I try to place a test
bid, I get:
[2005-01-30 02:31:38] Pre-bid on 3870143079 FAILED:
Unable to determine error. This indicates a bug.
This turns out to be because the pre-bid login attempt
generated the following Squid error:
HTTP/1.0 501 Not Implemented
Server: squid/2.5.STABLE7
Mime-Version: 1.0
Date: Sun, 30 Jan 2005 01:20:21 GMT
Content-Type: text/html
Content-Length: 1129
Expires: Sun, 30 Jan 2005 01:20:21 GMT
X-Squid-Error: ERR_UNSUP_REQ 0
X-Cache: MISS from proxy1.rz.uni-karlsruhe.de
Proxy-Connection: close
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type"
CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The requested URL could not be
retrieved</TITLE>
<STYLE
type="text/css"><!--BODY{background-color:#ffffff;font-family:verdana,sans-serif}PRE{font-family:sans-serif}--></STYLE>
</HEAD><BODY>
<H1>ERROR</H1>
<H2>The requested URL could not be retrieved</H2>
<HR noshade size="1px">
<P>
While trying to retrieve the URL:
<A
HREF="https://signin.ebay.com/ws/eBayISAPI.dll?">https://signin.ebay.com/ws/eBayISAPI.dll?</A>
<P>
The following error was encountered:
<UL>
<LI>
<STRONG>
Unsupported Request Method and Protocol
</STRONG>
</UL>
<P>
Squid does not support all request methods for all
access protocols.
For example, you can not POST a Gopher request.
<P>Your cache administrator is <A
HREF="mailto:squid@rz.uni-karlsruhe.de">squid@rz.uni-karlsruhe.de</A>.
<BR clear="all">
<HR noshade size="1px">
<ADDRESS>
Generated Sun, 30 Jan 2005 01:20:21 GMT by
proxy1.rz.uni-karlsruhe.de (squid/2.5.STABLE7)
</ADDRESS>
</BODY></HTML>
I believe that this is because Squid only supports
http, not https. If I'm right, the solution is pretty
clear: don't proxy https requests, or (better, and as
most browsers do) have a separate configuration option
for https proxies. I tried to test this theory by
hacking URL::create to change "if (proxy == NULL)" to
"if (proxy == NULL || strncmp(url,"https",5) == 0)",
but that just produced a connection error from my
attempt to log in. So I guess there are different
rules for doing https through Squid. Unfortunately, I
don't currently have the time to attempt a better fix.