Параметры кеша и устранение неполадок
Параметры кеша задаются завершающей последовательностью в пароле прокси. Параметры логина, такие как пул, страна, город и сессия, не меняются. Суффикс сам по себе полностью включает режим: Litport не включает кеширование для токена неявно, а запрос без суффикса остаётся обычным запросом через прокси.
PASSWORD_cache-<types>[_cacheduration-<minutes>][_cacheignoreheader-1]
Примеры:
username:password_cache-images,fonts
username_country-us_sid-crawl-42:password_cache-all_cacheduration-30
username:password_cache-scripts_cacheduration-60_cacheignoreheader-1
Сначала Litport пробует пароль целиком, как он указан. Так сохраняется работа существующего пароля, который случайно заканчивается текстом, похожим на параметры кеша. Только если таких данных для подключения нет, Litport разбирает корректную завершающую последовательность кеша и аутентифицирует базовый пароль.
Параметры#
| Параметр | Значения | Поведение |
|---|---|---|
_cache- |
images, scripts, fonts, all, поддерживаемое расширение или набор через запятую |
Включает подходящие типы. Регистр значений не учитывается; генерируемые значения пишутся в нижнем регистре. |
_cacheduration- |
Целое число минут, минимум 1 | По умолчанию 120, если параметр отсутствует или меньше 1. Запись может быть удалена раньше из-за эксплуатационног |
_cacheignorehead |
Само значение 1 |
Игнорирует директивы исходного сервера о свежести и приватности для ответов, подходящих по остальным признакам. Запрошенный TTL отсчитывается с момента, когда Litport получает и сохраняет ответ целиком; Date и Age исходного сервера из него не вычитаются. Безусловные исключения по безопасности продолжают действовать. |
Расширения: png,jpg,jpeg,gif,svg,ico,webp, js,css,wasm,map и
woff,woff2,ttf,eot,otf. Пустой список или неподдерживаемое значение оставляет запрос некешируемым,
не нарушая аутентификацию на прокси.
Результат запроса#
- Попадание: байты тела ответа, отданные из записи на хабе, бесплатны. Обрыв соединения клиентом или ошибка чтения из кеша остаются видимыми в статусе доставки и никогда не переходят в тарифицируемый трафик.
- Промах: Litport использует обычный путь через апстрим. Байты запроса и ответа оплачиваются как обычно. Корректный полный ответ может быть сохранён для другого запроса.
- Обход кеша: Litport отправляет запрос в апстрим, не используя и не сохраняя запись кеша. Трафик оплачивается как обычно.
Собственного или авторитетного заголовка ответа Litport о попадании в кеш нет. Age может появиться
или увеличиться в кешированном ответе, но его могут задавать и исходные серверы, и CDN; для попаданий,
промахов, обходов, бесплатных байтов и экономии при оплате за ГБ используйте раздел «Статистика
трафика» или API токенов. Ручной очистки кеша нет.
Допустимость и безусловные исключения#
Litport сохраняет только HTTPS-ответы на GET со статусом 200 и путём, заканчивающимся выбранным
расширением. Объект определяется точным URL, включая порядок и кодирование параметров запроса.
В стандартном режиме s-maxage приоритетнее max-age; побеждает меньшее из корректного срока
свежести исходного сервера и запрошенной длительности. Запрошенная длительность — жёсткий максимум:
если у ответа исходного сервера в стандартном режиме скорректированный Age уже равен ей или больше,
Litport не сохраняет этот ответ. С _cacheignoreheader-1 запрошенный TTL отсчитывается с момента,
когда Litport получает и сохраняет ответ целиком, без вычитания Date или Age исходного сервера.
Эти запросы всегда обходят кеш, даже с _cacheignoreheader-1:
Authorization,Cookie,Rangeили условные заголовки запросаCache-Control: no-cache,no-storeилиmax-age=0либоPragma: no-cacheв запросеSet-Cookie, неподдерживаемыйVary, частичное содержимое, слишком большие ответы или неполные тела- сервис-воркеры, URL без расширения, API, документы, видео, аудио и архивы
- цели с обычным
http://, вход по SOCKS5, UDP и HTTP/3/QUIC
_cacheignoreheader-1 может переопределять отсутствующие или запрещающие директивы кеширования в
ответе, но не перечисленные выше исключения. Поскольку сохранённая запись общая в пределах одного
хаба, используйте этот параметр только для публичных ресурсов без аутентификации, одинаковых для всех,
кто их запрашивает.
Поведение протоколов#
Для HTTPS-запросов в режиме кеша поддерживаются клиенты HTTP/1.1 и HTTP/2. Litport также может согласовать HTTP/2 на проверенном участке до исходного сервера. HTTP/3 использует QUIC поверх UDP, а явный путь HTTP-прокси Litport — это TCP CONNECT; поэтому QUIC-запрос не попадает в этот путь кеширования. Приложения часто переключаются на HTTP/2, но Litport не заявляет о кешировании HTTP/3.
Эндпоинт прокси Litport можно записывать как http://HUB:PORT. Допустимость определяется URL целевого
сайта, который должен быть https://....
Устранение неполадок#
| Симптом | Вероятная причина | Что делать |
|---|---|---|
| Ошибка издателя TLS или неизвестного CA | Процесс клиента не доверяет корневому сертификату Litport | Настройте CA в этом процессе; проверьте отпечаток скачанного файла. |
Работает без _cache-, не работает с ним |
Отдельное хранилище доверенных сертификатов приложения или закрепление сертификата (pinning) | Настройте приложение, которым вы владеете, или не используйте режим кеша. Закрепление сертификата в стороннем приложении обойти нельзя. |
| Первый запрос оплачивается | Выбранный хаб ещё не прогрет | Повторите тот же подходящий URL через тот же хаб. |
| После смены хаба запросы снова стали холодными | Хранилище кеша локальное и не реплицируется | Прогрейте новый хаб или используйте один хаб для этой нагрузки. |
| Каждый запрос — промах | URL или параметры запроса различаются, запись истекла или вытеснена, либо ответ нельзя сохранить | Сравните точные URL и проверьте заголовки кеширования и статус исходного сервера. |
| Ответ исходного сервера, выглядящий свежим, не сохраняется в стандартном режиме | Его скорректированныAge уже равен запрошенной длительности или больше её |
При необходимости запросите большую длительность |
| Кешированный ответ устарел или должен измениться немедленно | Ручная очистка кеша недоступна | Используйте более короткий TTL или версионные URL и дождитесь истечения срока записи. |
| Запрос обходит кеш | Исключены метод, заголовки, ответ, схема целевого URL, вход или расширение | Используйте подходящий публичный HTTPS GET или продолжайте работать через обычный оплачиваемый прокси. |
| Обычный HTTP никогда не кешируется | На участке до исходного сервера нет аутентифицирован |
Продолжайте использовать его как обычно; CA не сделает обычный HTTP подходящим. |
Для целевых сайтов, чувствительных к транспортному уровню, прочитайте Кеш и транспортные отпечатки.