Glassfish 3 - сжатие gzip не работает для .jsp - PullRequest
0 голосов
/ 25 августа 2011

Пожалуйста, посмотрите это короткое видео, которое подробно показывает мою проблему : http://youtu.be/uAza4m3fxpY?hd=1

У меня на сервере Glassfish 3.1 запущен веб-проект Netbeans. У меня есть очень простой файл .jsp с типом содержимого, установленным в 'text / html', и большим текстом пустого текста в теле. Это выглядит так:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Gzip Test</title>
    </head>
    <body>
        <h1>Gzip compsression test</h1>
        <p>****LOTS OF DUMMY TEXT***</p>
    </body>
</html>

В администраторе Glassfish я принудительно включил сжатие gzip для прослушивателя HTTP (как описано в этом руководстве: http://www.vikasing.com/2010/01/enable-gzip-compression-on-glassfish-v3.html)

Когда загрузите страницу в Firefox и посмотрите на заголовок ответа, я бы ожидал увидеть Content-Encoding: gzip, но его там нет.

Почему контент не распаковывается?

Ответы [ 4 ]

1 голос
/ 07 сентября 2011

Я обнаружил, что это ошибка в Glassfish 3.1. Он не разделяет заголовок accept-encoding, используя символ ,. Например, если вы установите заголовок accept-encoding в Firefox: gzip, deflate, он не будет сжать содержимое, потому что запятая его запирает, но если вы установите его в gzip, то он будет получен сервером от сжатия, потому что нет запятая, чтобы подавиться. По-видимому, это было исправлено в Glassfish 3.1.1, но я еще не проверял это. Подробнее см. http://www.java.net/forum/topic/glassfish/glassfish/gzip-compression-glassfish-3-doesnt-work?force=899.

0 голосов
/ 17 апреля 2013

У меня такие же проблемы с glassfish 3.1.2.2 и gzip.

Ответы на HTTP-запросы в версии 1.0 не сжимаются. Вы должны отправить свои запросы в HTTP 1.1 , чтобы получить сжатые ответы от вашего сервера Glassfish.

Более того, вы должны добавить заголовок "Accept-Encoding: gzip" в ваши запросы http.

0 голосов
/ 17 марта 2012

Та же ошибка в Glassfish 3.1.2 и даже 4.0 Beta - похоже, что сжатие gzip стало полностью ошибочным. Даже если принять кодировку firefox только для gzip, это не сработает. Возможно, вы используете CompressionFilter от Google, но его довольно сложно использовать, поскольку он использует ряд зависимостей.

0 голосов
/ 06 сентября 2011

Спасибо за видео. Я помню, что это произошло до того, как Glassfish 3.0 был выпущен как часть FishCAT.

Я думаю, что проблема у вас в том, что вы устанавливаете только одного слушателя 'http-listener-1' и вам также нужно установить 'http-listener-2'. (возможно, вы сделали это, но не показали это в видео?)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...