Назад | Перейти на главную страницу

Разгрузка SSL с помощью Citrix Netscaler не работает при запросе файлов PDF

мы работаем в одном из наших проектов с Citrix Netscaler перед нашим веб-сайтом. мы настроили Citrix Netscaler для использования разгрузки SSL, но когда мы запрашиваем файл PDF, разгрузка SSL не работает должным образом. при просмотре html-страниц работает нормально. Есть ли проблема с разгрузкой SSL в Citrix Netscaler?

У меня такая же проблема. Мы настроили разгрузку SSL для веб-приложения, и каждая страница html загружалась без проблем, но "application/acrobat"содержимое, которое должно быть отправлено клиенту и отображено веб-браузером, всегда завершается при сбросе соединения, чтобы содержимое не загружалось.

Мы обнаружили, что "block HTTP invalid request"опция блокировала это содержимое. Если мы удалим эту опцию в глобальных параметрах HTTP, данные PDF могут быть отображены в клиентском веб-браузере. Это не было возможностью отключить"block HTTP invalid request", потому что он нужен нам для защиты приложений, поэтому мы исследуем еще немного, чтобы найти основную причину, которая заставляет NetScaler блокировать этот трафик.

Мы использовали следующую команду оболочки, чтобы увидеть статистику причин блокировки:

root@ns# nsconmsg -g http_err_noreuse_ -d stats

Index reltime     counter-value symbol-name&device-no
    1  483000                 0 http_err_noreuse_multipart
    3       0                 0 http_err_noreuse_IncompleteHeader
    5       0                 0 http_err_noreuse_link_server
    7       0                 0 http_err_noreuse_large_data
    9       0                 0 http_err_noreuse_IncompleteChunk
   11       0                 0 http_err_noreuse_InvalidHeader
   13       0                 0 http_err_noreuse_ResponseBeforeData
   15       0                 0 http_err_noreuse_non_trackable_res
   17       0                 0 http_err_noreuse_http_0_9
   19       0                25 http_err_noreuse_morethanCtLen

Мы обнаружили, что причиной блокировки трафика была http_err_noreuse_morethanCtLen. Этот счетчик увеличивается, когда POST тело больше, чем значение, указанное в запросе Content-Length заголовок.

Поиском и поиском мы нашли эту статью: https://support.citrix.com/article/CTX205113

Ошибка решается включением опции "erase extra data from server".

Надеюсь, мое решение вам поможет.

Да, согласен с ImmL, информации недостаточно.

Наиболее вероятные причины:

  1. PDF-файлы с «быстрым веб-просмотром» и невероятно глупые клиенты Acrobat / Acroread, отправляющие слишком большие заголовки HTTP-запроса «Range:», которые отбрасываются Netscaler. Распространение ответов HTTP 206 в журналах веб-сервера является хорошим показателем этого.
  2. невероятно глупое взаимодействие MSIE + Acrobat, при котором MSIE предотвращает сохранение содержимого HTTPS на диск, по-видимому, загружает файл PDF, а затем запускает плагин Acrobat с файлом, которого не существует.

Возможные обходные пути на стороне сервера: 1. отключите быстрый просмотр в Интернете при создании PDF-файлов и / или увеличьте ограничения размера HTTP-заголовка. 2. чтобы разрешить кеширование PDF, установите Cache-control: для удаления «no-cache», добавьте max -age = 0; отключите любой заголовок Pragma :. Или «Сохранить как», а затем открыть PDF вручную.