Я пытаюсь настроить локальный прокси-сервер Squid, который ничего не кэширует. Я использую Dockerized squid на основе этого образа:
https://hub.docker.com/r/ubuntu/squid
Я запускаю образ так:
docker run -d --name squid-container -v /host/squid.conf:/etc/squid/squid.conf -e TZ=UTC -p 3128:3128 ubuntu/squid:4.13-21.10_edge
И сейчас я тестирую это через приложение Node с Axios следующим образом:
const res = await axios.get('https://www.google.com', {
прокси: {
хост: «локальный хост»,
порт: 3128
}
});
console.log(рез.данные);
Это не работает. Например, для примера Google он отвечает HTTP 502, и в журналах Squid я вижу:
1646472971.202 183 172.17.0.1 TCP_MISS/502 3904 ПОЛУЧИТЬ https://www.google.com/ - HIER_DIRECT/216.58.209.196 text/html
Но для некоторых запросов это работает. Например https://ipfs.io/ipfs/QmTWMcWKgv2a5GjH6GoUjJXChZ55HAE3tVEXvPzpdbMnFU/102
работает отлично.
Моя конфигурация Squid (кое-что из того, что там было, уже получено в результате исследования этой проблемы, но ничего из этого не помогло. Кэширование намеренно отключено)
кэш запретить все
dns_v4_first на
forwarded_for выкл.
через выкл.
http_access разрешить всем
acl все src все
HTML-страница, которую я получаю при ошибке от Axios:
При попытке получить URL произошла следующая ошибка: https://www.google.com/
Ошибка чтения
Система вернула: [Нет ошибок]
Произошла ошибка при чтении данных из сети. Пожалуйста, повторите запрос.
Ваш администратор кеша — веб-мастер.
Без использования прокси работают все запросы аксиом. Кто-нибудь знает, почему некоторые запросы работают, а некоторые нет?