William V Wishon writes: 

> 
> The hyperlink that is in the email looks like what you said, like this  
> 
> http://mail.wishon.org/?redirect=http%3A%2F%2Fwww.nytimes.com%2F2001%2F06% 
> 2F 05%2Fpolitics%2F05BUSH.html  
> 
> If I put that into a new window it successfully loads the sqwebmail page, 
> I can see the background for a second before it redirects to what should 
> be the real url.  It is that second url that is the one in error.  Using 
> ethereal I was able to determine that the thing trying to cause the 
> refresh is a Refresh Header like this:  
> 
> Refresh: 0; URL="http://www.nytimes.com/2001/06/05/politics/05BUSH.html";  
> 
> I couldn't find the Refresh header mentioned in the http spec, is it part 
> of the http standard?  Opera is interpreting the url as a url relative to 

See http://www.w3.org/Protocols/HTTP/Issues/http-wg.html, scroll down to 
"Issues for beyond HTTP/1.1". 

> the current host and sending a get request to mail.wishon.org like this:  
> 
> GET /%22http://www.nytimes.com/2001/06/05/politics/05BUSH.html%22 HTTP/1.1
> User-Agent: Opera/5.0 (Linux 2.4.1 i686; U)  [en]
> Host: mail.wishon.org  
> 
> Which is what causes the 404 on my server. Is this a missinterpretation of 
> the Refresh header? 

Yes.  Opera should either ignore this header, and force you to manually 
click on the link, or do it correctly. 

I suspect that Opera can't swallow the fact that the argument to URL is 
quoted.  It doesn't see http:// immediately after URL=, then interprets the 
whole bloody thing as a relative URL. 

HTTP headers are derived from MIME headers, where MIME paramater arguments 
can always be quoted. 

 


-- 
Sam 

Reply via email to