Just to sanity check, did you reload Apache?

We put in absolute URLs, and we tell Django to build those for us. Django
will insert "https" if it sees the "HTTPS" environment variable set to
"on", and "http" otherwise. Provided the process is ending up with this
environment variable set, and the server is reloaded, it should be working.
Would you mind pasting the reviewboard.wsgi file?

Christian

-- 
Christian Hammond - chip...@chipx86.com
Review Board - http://www.reviewboard.org
VMware, Inc. - http://www.vmware.com



On Wed, Dec 5, 2012 at 4:46 PM, Brian Lewis <*@brianlewis.us> wrote:

> Hi Christian,
>
> Just tried that and there's no change. Additionally, I notice the response
> from the first request looks like this (notice the http URL's vs https..
> almost like it sees the redirect but doesn't want to follow it!)
>
> {"stat": "ok", "review_request": {"status": "pending", "last_updated":
> "2012-12-05 14:02:11", "description": "", "links": {"diffs": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/diffs/";,
> "method": "GET"}, "repository": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/repositories/3/";,
> "method": "GET", "title": "Puppet"}, "screenshots": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/screenshots/";,
> "method": "GET"}, "self": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/";,
> "method": "GET"}, "update": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/";,
> "method": "PUT"}, "last_update": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/last-update/";,
> "method": "GET"}, "reviews": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/reviews/";,
> "method": "GET"}, "draft": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/draft/";,
> "method": "GET"}, "file_attachments": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/file-attachments/";,
> "method": "GET"}, "submitter": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/users/admin/";, "method":
> "GET", "title": "admin"}, "changes": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/changes/";,
> "method": "GET"}, "delete": {"href": "
> http://reviewboard.COMPANYNAME.com/reviews/api/review-requests/189/";,
> "method": "DELETE"}}, "public": false, "target_groups": [], "bugs_closed":
> [], "changenum": null, "target_people": [], "testing_done": "", "branch":
> "", "time_added": "2012-12-05 14:02:11", "summary": "", "id": 189}}
>
> On Wednesday, December 5, 2012 4:38:51 PM UTC-8, Christian Hammond wrote:
>
>> Hi Brian,
>>
>> Something to try would be to add:
>>
>>     os.environ['HTTPS'] = 'on'
>>
>> to htdocs/reviewboard.wsgi.
>>
>> See if that makes a difference. I noticed this at one point as well. We
>> need to change things to generate this by default if using https, or find a
>> beter way to turn it on by default.
>>
>> Christian
>>
>> --
>> Christian Hammond - chi...@chipx86.com
>>
>> Review Board - http://www.reviewboard.org
>> VMware, Inc. - http://www.vmware.com
>>
>>
>>
>> On Wed, Dec 5, 2012 at 4:31 PM, Brian Lewis <*...@brianlewis.us> wrote:
>>
>>>  Hello All,
>>>
>>> I've been racking my brain on this for a couple of days and figured I'd
>>> post here before I refactor my entire setup. Basically what we are doing
>>> is, we have two servers - one is a standard apache web node that acts as a
>>> proxy server and terminates SSL, then we have reviewboard being proxied
>>> behind that.
>>>
>>> I've got everything setup and working with the exception of one piece. I
>>> can upload a diff, I can add titles, descriptions, reviewers, etc. Tracing
>>> the requests I can see that https is being returned as the request URL,
>>> HOWEVER, when you go to publish a review, we get a 304 error and the
>>> request URL is a non-https link.
>>>
>>> I'm doing the rewriting from the web node directly, with a mod_rewrite
>>> specifically calling out that its proxied (but changing or completely
>>> removing the options doesn't make any difference) For reference, here's the
>>> rewrite ::
>>>
>>>  RewriteCond %{HTTPS} off
>>>  RewriteRule .* https://%{HTTP_HOST}%{REQUEST_****URI} [R=301,P,PT,L]
>>>
>>>
>>> When I click on publish, essentially I see two requests (and nothing at
>>> all in the debug logs, etc)  The first ::
>>>
>>> Request URL:*https://reviewboard.boku.com/reviews/api/review-requests
>>> /189/?api_format=json*
>>> Request Method:GET
>>> Status Code:304 NOT MODIFIED
>>> Request Headersview source
>>> Accept:application/json, text/javascript, */*
>>> Accept-Charset:ISO-8859-1,utf-****8;q=0.7,*;q=0.3
>>> Accept-Encoding:gzip,deflate,**s**dch
>>> Accept-Language:en-US,en;q=0.8
>>> Cache-Control:max-age=0
>>> Connection:keep-alive
>>> Cookie:rbsessionid=**bbf07716639**4571eaaf514053e6c46**91;
>>> __utma=109258518.568604164.**135**2840613.1352938162.**1354736370.**4;
>>> __utmc=109258518; __utmz=109258518.1352929269.2.****
>>> 2.utmcsr=google|utmccn=(**organi**c)|utmcmd=organic|**utmctr=(not%**20provided);
>>> csrftoken=**b6dec71b9219e2090d9d**98acf203e1**f4
>>> Host:reviewboard.boku.com
>>> If-Modified-Since:Wed, 05 Dec 2012 22:02:11 GMT
>>> Referer:https://reviewboard.**bo**ku.com/reviews/r/189/<https://reviewboard.boku.com/reviews/r/189/>
>>> User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5)
>>> AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11
>>> X-Requested-With:**XMLHttpReques**t
>>> Query String Parametersview URL encoded
>>> api_format:json
>>> Response Headersview source
>>> Cache-Control:max-age=0
>>> Connection:close
>>> Date:Thu, 06 Dec 2012 00:12:46 GMT
>>> Expires:Thu, 06 Dec 2012 00:12:48 GMT
>>> Server:Apache/2.2.15 (CentOS)
>>> Vary:Accept,Cookie,Accept-**Lang**uage
>>>
>>> The second ::
>>>
>>>
>>> Request URL:*http://reviewboard.boku.com/reviews/api/review-requests/
>>> 189/draft/*
>>> Request Method:OPTIONS
>>> Status Code:200 OK
>>> Request Headersview source
>>> Accept:*/*
>>> Accept-Charset:ISO-8859-1,utf-****8;q=0.7,*;q=0.3
>>> Accept-Encoding:gzip,deflate,**s**dch
>>> Accept-Language:en-US,en;q=0.8
>>> Access-Control-Request-**Headers**:origin, x-requested-with,
>>> content-type, accept
>>> Access-Control-Request-Method:****PUT
>>> Connection:keep-alive
>>> Host:reviewboard.boku.com
>>> Origin:https://reviewboard.**bok**u.com <https://reviewboard.boku.com/>
>>> User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5)
>>> AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11
>>> Response Headersview source
>>> Allow:GET,HEAD,POST,OPTIONS
>>> Connection:close
>>> Content-Length:0
>>> Content-Type:text/plain; charset=UTF-8
>>> Date:Thu, 06 Dec 2012 00:12:48 GMT
>>> Server:Apache
>>>
>>>
>>> literally every other request comes in via HTTPS, clicking on links,
>>> performing actions, etc. the ONLY thing that fails is publishing. I'm not
>>> sure what to do next at this point so I wanted to see if anyone had ever
>>> run into this. Below I will also paste the apache config for the proxy/ssl
>>> term server and the web head for comparison.
>>>
>>>
>>> SSL Proxy ::
>>>
>>> <VirtualHost 192.168.200.124:**443 <http://192.168.200.124:443/>>
>>>
>>>   ServerName 
>>> reviewboard.**COMPANYNAME.com<http://reviewboard.companyname.com/>
>>>
>>>   SSLEngine on
>>>
>>>   SSLProtocol all -SSLv2
>>>
>>>   SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+**RS**A:+HIGH:+MEDIUM:+LOW
>>>
>>>   SSLCertificateFile /etc/pki/entrust-certs/star.**CO**
>>> MPANYNAME.com/star.**COMPANYNAME**.com.crt<http://star.companyname.com/star.COMPANYNAME.com.crt>
>>>
>>>   SSLCertificateKeyFile /etc/pki/entrust-certs/star.**CO**
>>> MPANYNAME.com/star.**COMPANYNAME**.com.key<http://star.companyname.com/star.COMPANYNAME.com.key>
>>>
>>>   SSLCACertificateFile /etc/pki/entrust-certs/star.**CO**
>>> MPANYNAME.com/star.**COMPANYNAME**.com_bundle.crt<http://star.companyname.com/star.COMPANYNAME.com_bundle.crt>
>>>
>>> #  SSLCertificateFile /etc/pki/tls/certs/**COMPANYNAME**.com.crt
>>>
>>> #  SSLCertificateKeyFile /etc/pki/tls/certs/**COMPANYNAME**.com.key
>>>
>>> #  SSLCACertificateFile /etc/pki/tls/certs/gd_bundle.**c**rt
>>>
>>>
>>>   # Default to not cache anything
>>>
>>>   ExpiresActive On
>>>
>>>   ExpiresDefault "access plus 0 seconds"
>>>
>>>
>>>   # Cache just images
>>>
>>>   ExpiresByType image/gif "access plus 10 minutes"
>>>
>>>   ExpiresByType image/jpg "access plus 10 minutes"
>>>
>>>   ExpiresByType image/png "access plus 10 minutes"
>>>
>>>
>>>   proxyPreserveHost On
>>>
>>>   ProxyRequests On
>>>
>>>
>>>   ProxyPass / 
>>> http://reviewboard01.local-**C**OMPANYNAME.net:8080/<http://reviewboard01.local-companyname.net:8080/>
>>>
>>>   ProxyPassReverse / http://reviewboard01.local-**C**
>>> OMPANYNAME.net:8080/ <http://reviewboard01.local-companyname.net:8080/>
>>>
>>>   <Location />
>>>
>>>     ProxyPassReverse /
>>>
>>>     Order deny,allow
>>>
>>>     Allow from all
>>>
>>>   </Location>
>>>
>>>   RequestHeader edit Location 
>>> ^http://reviewboard.**COMPANYNAM**E.com/<http://reviewboard.companyname.com/>
>>>  
>>> https://reviewboard.**COM**PANYNAME.com/<https://reviewboard.companyname.com/>
>>>
>>>
>>>   CustomLog /var/log/httpd/reviewboard.**COM**PANYNAME.com-access.log
>>> common
>>>
>>>   ErrorLog  /var/log/httpd/reviewboard.**CO**MPANYNAME.com-error.log
>>>
>>> SetEnv HTTPS on
>>>
>>>
>>> </VirtualHost>
>>>
>>>
>>> <VirtualHost *:80>
>>>
>>>   ServerName 
>>> reviewboard.**COMPANYNAME.com<http://reviewboard.companyname.com/>
>>>
>>>   #RewriteEngine on
>>>
>>>
>>>   # Rewrite traffic back to 
>>> https://reviewboard.**COMPANY**NAME.com<https://reviewboard.companyname.com/>
>>>
>>> #  RewriteCond %{SERVER_NAME}    
>>> reviewboard.COMPANYNAME.com<http://reviewboard.companyname.com/>
>>>
>>> #  RewriteCond %{HTTPS} !=on
>>>
>>> #  RewriteRule ^/(.*)$ 
>>> https://reviewboard.**CO**MPANYNAME.com/$1<https://reviewboard.companyname.com/$1>
>>>  [R=301,PT]
>>>
>>>
>>>  RewriteCond %{HTTPS} off
>>>
>>>  RewriteRule .* https://%{HTTP_HOST}%{REQUEST_****URI} [R=301,P,PT,L]
>>>
>>>
>>>   CustomLog /var/log/httpd/reviewboard.**COM**PANYNAME.com-access.log
>>> common
>>>
>>>   ErrorLog  /var/log/httpd/reviewboard.**CO**MPANYNAME.com-error.log
>>>
>>> SetEnv HTTPS on
>>>
>>> </VirtualHost>
>>>
>>>
>>>
>>> Web Node/Node running Reviewboard
>>>
>>>
>>> Listen 8080
>>>
>>> <VirtualHost *:8080>
>>>
>>> SetEnv HTTPS on
>>>
>>> ServerName 
>>> reviewboard01.**local-**COMPANYNAME.net<http://reviewboard01.local-companyname.net/>
>>>
>>> DocumentRoot "/var/www/reviewboard/htdocs"
>>>
>>> #LogLevel debug
>>>
>>> # Error handlers
>>>
>>> ErrorDocument 500 /errordocs/500.html
>>>
>>>
>>> WSGIPassAuthorization On
>>>
>>> WSGIScriptAlias "/reviews" "/var/www/reviewboard/htdocs/**r**
>>> eviewboard.wsgi/reviews"
>>>
>>> <Directory "/var/www/reviewboard/htdocs">
>>>
>>> AllowOverride All
>>>
>>> Options -Indexes FollowSymLinks
>>>
>>> Allow from all
>>>
>>> </Directory>
>>>
>>>
>>> # Alias static media requests to filesystem
>>>
>>> Alias /reviews/media "/var/www/reviewboard/htdocs/**m**edia"
>>>
>>> Alias /reviews/errordocs "/var/www/reviewboard/htdocs/**e**rrordocs"
>>>
>>> Alias /reviews/favicon.ico "/var/www/reviewboard/htdocs/**m**
>>> edia/rbcommons/images/**favicon.**png"
>>>
>>>
>>> Any help here would be greatly appreciated!
>>>
>>>
>>> Best,
>>>
>>> Brian
>>>
>>> --
>>> Want to help the Review Board project? Donate today at
>>> http://www.reviewboard.org/**donate/<http://www.reviewboard.org/donate/>
>>> Happy user? Let us know at 
>>> http://www.reviewboard.org/**users/<http://www.reviewboard.org/users/>
>>> -~----------~----~----~----~--**----~----~------~--~---
>>> To unsubscribe from this group, send email to reviewboard...@**
>>> googlegroups.com
>>>
>>> For more options, visit this group at http://groups.google.com/**
>>> group/reviewboard?hl=en<http://groups.google.com/group/reviewboard?hl=en>
>>>
>>>
>>>
>>
>>  --
> Want to help the Review Board project? Donate today at
> http://www.reviewboard.org/donate/
> Happy user? Let us know at http://www.reviewboard.org/users/
> -~----------~----~----~----~------~----~------~--~---
> To unsubscribe from this group, send email to
> reviewboard+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/reviewboard?hl=en
>
>
>

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~----------~----~----~----~------~----~------~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en


Reply via email to