ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: постоянное использование https




15.06.09, 14:28, "Gena Makhomed" <gmm@xxxxxxxxx>:

> On Monday, June 15, 2009 at 12:37:06, umask wrote:
> >> u> Заменяю proxy_pass на  http://127.0.0.1:8095/ и sub_filter работать 
> >> перестаёт.
> >> u> В чём мистика?
> >> скорее всего - по протоколу http tomcat выдает ответы сжатые с помощью gzip
> >> или же по http он выдает другой mime-type, отличный от дефолтового 
> >> text/html
> >> http://sysoev.ru/nginx/docs/http/ngx_http_sub_module.html#sub_filter_types
> u> Вот что с портом 8095 (без ssl):
> u> $ curl -D headers http://127.0.0.1:8095
> если в запросе curl`а нет Accept-Encoding: gzip
> ответ в любом случае будет не сжатым.
> для отладки в этой ситуации лучше использовать Firefox
> с расширениями HttpFox, Live HTTP Headers или аналогичными
> https://addons.mozilla.org/en-US/firefox/addon/3829
> https://addons.mozilla.org/en-US/firefox/addon/6647
> или смотреть через tcpdump / wireshark.
> если это не прояснит ситуацию - тогда сделать в nginx
> отладочный лог и в нем смотреть как работает sub_filter
> u> Вот что на порту 9095 (там полноценный SSL с сертификатом и прочей
> u> хренью - в томкатовском коннекторе):
> u> $ curl -D headers https://127.0.0.1:9095 -k
> u> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
> u> "http://www.w3.org/TR/html4/loose.dtd";>
> u> <html>
> u> <head>
> u> <meta http-equiv="refresh"
> u> content="0;url=http://test.test.ru/blabla/";>
> u> </head>
> u> <body>
> u> </body>
> u> </html>
> вот тут я логики работы backend`а вообще не понимаю.
> к нему клиент вежливо обращается по протоколу https,
> а он обратно делает принудительный редирект на http.
> P.S.
> судя по документации на сайте апача:
> http://tomcat.apache.org/tomcat-3.2-doc/tomcat-ssl-howto.html
> http://tomcat.apache.org/connectors-doc/generic_howto/proxy.html
> tomcat должен нормально понимать переменную окружения HTTPS.
> -- 
> Best regards,
>  Gena


$ curl -D /tmp/headers -H 'Accept-Encoding: gzip' http://127.0.0.1:8095/
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
<html>
<head>
<meta http-equiv="refresh" content="0;url=http://test.test.ru/blabla/";>
</head>

<body>
</body>
</html>

$ cat /tmp/headers 
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
ETag: W/"234-1239898480000"
Last-Modified: Thu, 16 Apr 2009 16:14:40 GMT
Content-Type: text/html
Content-Length: 234
Date: Mon, 15 Jun 2009 11:00:43 GMT

$ curl -D /tmp/headers -H 'Accept-Encoding: gzip' https://127.0.0.1:9095/ -k
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
<html>
<head>
<meta http-equiv="refresh" content="0;url=http://test.test.ru/blabla/";>
</head>

<body>
</body>
</html>

$ cat /tmp/headers 
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
ETag: W/"234-1239898480000"
Last-Modified: Thu, 16 Apr 2009 16:14:40 GMT
Content-Type: text/html
Content-Length: 234
Date: Mon, 15 Jun 2009 11:00:52 GMT



 




Copyright © Lexa Software, 1996-2009.