You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apache-bugdb@apache.org by Rodent of Unusual Size <co...@decus.org> on 1997/06/12 16:30:01 UTC

Re: mod_proxy/699: Mod_Proxy passes original URLs, never rewritten URLs (re #260)

The following reply was made to PR mod_proxy/699; it has been noted by GNATS.

From: coar@decus.org (Rodent of Unusual Size)
To: apbugs@apache.org, ccsmrh@bath.ac.uk, Coar@decus.org
Subject: Re: mod_proxy/699: Mod_Proxy passes original URLs,
 never rewritten URLs (re #260)
Date: Thu, 12 Jun 1997 10:19:11 -0400

 
     [Additional information from the originator]
 
 By the way, the following patch fixes both "bugs" for _ME_:
 
 *** proxy_http.c        Wed Jun 11 10:37:33 1997
 --- proxy_http.c.orig   Mon Jun  9 14:01:48 1997
 ***************
 *** 207,213 ****
   
       if (proxyhost != NULL)
       {
 !       url = r->filename + 6;                  /* restore original URL */
         server.sin_port = htons(proxyport);
         err = proxy_host2addr(proxyhost, &server_hp);
         if (err != NULL) return DECLINED;  /* try another */
 --- 207,213 ----
   
       if (proxyhost != NULL)
       {
 !       url = r->uri;                   /* restore original URL */
         server.sin_port = htons(proxyport);
         err = proxy_host2addr(proxyhost, &server_hp);
         if (err != NULL) return DECLINED;  /* try another */
 
 Clearly, this only fixes things when you are chaining to another proxy
 with ProxyRemote, since without ProxyRemote proxyhost always equals
 NULL. I believe the problem with losing the query string only occurred
 when ProxyRemote was used. However, the problem with ProxyPass semantics
 occurs with or without the ProxyRemote statement.
 
 This leads me to the conclusion that my solution is probably _not_ the
 correct solution!
 
 Hope that makes some sense,
  Cheers,
   Mark.