SOLVED:

*RewriteLocation* 0|1|2If 1 force *Pound* to change the Location: and
Content-location: headers in responses. If they point to the back-end
itself or to the listener (but with the wrong protocol) the response will
be changed to show the virtual host in the request. Default: 1 (active). If
the value is set to 2 only the back-end address is compared; this is useful
for redirecting a request to an HTTPS listener on the same server as the
HTTP listener.


On Tue, Jul 8, 2014 at 4:15 PM, Dave Atkins <[email protected]> wrote:

> Hello pound group,
>
> I have run into a perplexing problem where I am not sure if the issue is
> pound or the third party module. Please bear with me as I describe. I
> believe I am failing to pass something in the headers but not sure...
>
> I have pound + varnish + apache to serve multiple Drupal sites. For one of
> those sites (www.ceeforum.org), I am using pound to force SSL. For other
> sites (www.cee1.org), it just passes through.
>
> pound :80/:443
> varnish :8081
> apache: 8080
>
> The problem comes with the third party module "CiviCRM" CiviCRM, among
> other things, sends out emails with click-tracking urls embeded like this:
>
>
> https://www.ceeforum.org/sites/all/modules/civicrm/extern/url.php?u=2810&qid=50742
>
> upon hitting the url.php script, the actual destination url is looked up
> and user is redirected via a 302 location: header.
>
> The problem is that when the destination url is a hostname on the same
> server, the hostname is replaced by the local site url. The correct
> destination url is "www.cee1.org/ar" but instead it sends the user to "
> www.ceeforum.org/ar"
>
> To isolate the problem I have hit each component directly (details below)
> apache and varnish work. I also disabled the SSL in pound but got the same
> problem. This leads me to conclude the problem is in pound, although I
> would not be surprised if CiviCRM is expecting something nonstandard that I
> am failing to pass...
>
> If anyone can help, please let me know!
>
> Thank you!
>
>
>
> Here is my pound.cfg:
>
> ######################################################################
>
> ## listen, redirect and ... to:
>
>
> ## redirect all requests on port 80 ("ListenHTTP") to the local webserver
> (see "Service" below):
>
> ## varnish runs on 8081
>
> ## apache runs on 8080
>
>
> ListenHTTP
>
> Address 69.164.210.61
>
> Port 80
>
>
>  ## allow PUT and DELETE also (by default only GET, POST and HEAD)?:
>
> #xHTTP 0
>
>
>  Service
>
>  HeadRequire "Host: www.ceeforum.org"
>
>  Redirect "https://www.ceeforum.org";
>
>         End
>
>
>         Service
>
>                 HeadRequire "Host: forum.cee1.org"
>
>                 Redirect "https://forum.cee1.org";
>
>         End
>
>
>  Service
>
>  BackEnd
>
>  Address 127.0.0.1
>
>  Port 8081
>
>  End
>
> End
>
> End
>
>
> ListenHTTPS
>
>         HeadRemove "X-Forwarded-Proto"
>
>         AddHeader "X-Forwarded-Proto: https"
>
>         Address 69.164.210.61
>
>         Port 443
>
>         Cert "/home/www/cee.org/ssl/ceeforum-comodo.pem"
>
>         Service
>
>                 BackEnd
>
>                         Address 127.0.0.1
>
>                         Port    8081
>
>                 End
>
>         End
>
> End
> -----
>
> This works fine through apache:
>
>
> http://www.ceeforum.org:8080/sites/all/modules/civicrm/extern/url.php?u=2810&qid=50742
>
> and it works with varnish:
>
> datkins@WEBAPPS:~$ wget --server-response
> http://www.ceeforum.org:8081/sites/all/modules/civicrm/extern/url.php?u=2810&qid=50739
>
> [1] 4324
>
> datkins@WEBAPPS:~$ --2014-07-08 16:03:03--
> http://www.ceeforum.org:8081/sites/all/modules/civicrm/extern/url.php?u=2810
>
> Resolving www.ceeforum.org... 69.164.210.61
>
> Connecting to www.ceeforum.org|69.164.210.61|:8081... connected.
>
> HTTP request sent, awaiting response...
>
>   HTTP/1.1 302 Found
>
>   Server: Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.5 with Suhosin-Patch
> mod_ssl/2.2.11 OpenSSL/0.9.8g
>
>   X-Powered-By: PHP/5.2.6-3ubuntu4.5
>
>   Location: http://www.cee1.org/ar/
>
>   Cache-Control: max-age=1
>
>   Expires: Tue, 08 Jul 2014 20:03:04 GMT
>
>   Vary: Accept-Encoding
>
>   Content-Type: text/html
>
>   Content-Length: 0
>
>   Date: Tue, 08 Jul 2014 20:03:03 GMT
>
>   X-Varnish: 261053747
>
>   Age: 0
>
>   Via: 1.1 varnish
>
>   Connection: keep-alive
>
> Location: http://www.cee1.org/ar/ [following]
>
> --2014-07-08 16:03:03--  http://www.cee1.org/ar/
>
> Resolving www.cee1.org... 69.164.210.61
>
> Connecting to www.cee1.org|69.164.210.61|:80... connected.
>
> HTTP request sent, awaiting response...
>
>   HTTP/1.1 200 OK
>
>   Server: Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.5 with Suhosin-Patch
> mod_ssl/2.2.11 OpenSSL/0.9.8g
>
>   X-Powered-By: PHP/5.2.6-3ubuntu4.5
>
>   Set-Cookie: PHPSESSID=ef5538af8fdfbd1543c1602d755f7cba; path=/
>
>   Expires: Thu, 19 Nov 1981 08:52:00 GMT
>
>   Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
> pre-check=0
>
>   Pragma: no-cache
>
>   Set-Cookie: dgxdonate=ef5538af8fdfbd1543c1602d755f7cba; expires=Tue,
> 15-Jul-2014 20:03:06 GMT; path=/; domain=www.cee1.org
>
>   X-Pingback: http://www.cee1.org/ar/xmlrpc.php
>
>   Link: <http://www.cee1.org/ar/>; rel=shortlink
>
>   Vary: Accept-Encoding
>
>   Content-Type: text/html; charset=UTF-8
>
>   Content-Length: 20809
>
>   Date: Tue, 08 Jul 2014 20:03:06 GMT
>
>   X-Varnish: 261053748
>
>   Age: 0
>
>   Via: 1.1 varnish
>
>   Connection: keep-alive
>
> Length: 20809 (20K) [text/html]
>
> Saving to: `index.html'
>
>
> 100%[======================================>] 20,809      --.-K/s   in 0s
>
>
>
> 2014-07-08 16:03:06 (331 MB/s) - `index.html' saved [20809/20809]
>
>
> c
>
>
>  ---
> *Dave Atkins*
>
>
>
>
>

Reply via email to