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
|