Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: постоянное использование https
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
|