В нашей сети содержится растущее число устройств iOS, все с очень похожими конфигурациями. Весь доступ в Интернет осуществляется через прозрачный прокси.
Мы обнаружили, что обновления iOS и некоторые бесплатные приложения прекрасно кэшируются на прокси-сервере, но платные приложения не кэшируются должным образом (поскольку они, по-видимому, зашифрованы в Apple ID (?)).
Мне просто интересно, есть ли способ продвинуться вперед с этим, где мы могли бы кэшировать платные приложения, чтобы они покупались n раз, но загружались из кэша прокси, а не из Интернета каждый раз. Помимо ограничений пропускной способности, загрузка напрямую из Интернета замедляет все для всех, независимо от очередей справедливости и связанных с ними «исправлений».
Я знаю, что это маловероятно, но я решил, что терять нечего, а выиграть можно много, прежде чем искать другие решения (например, QoS).
решение1
Данные, которые вы хотите кэшировать, не предназначены для кэширования. Они относятся к конкретному пользователю(ям), который(е) их скачивает. (Кэширование платных приложений по мере их скачивания также может стать отличным способом их кражи.)
Вот почему исходный сервер отправляет заголовки вроде Cache-Control: private
или no-cache
вместе с ним, чтобы специально указать нижестоящим кэшам, таким как ваш прокси-сервер, не кэшировать данные.
Некоторые кэши, такие как squid, предоставляют способы переопределения этих директив; поскольку вы не указали, что именно вы использовали, пожалуйста, обратитесь к своей документации за подробностями, если вы действительно решительно настроены это сделать. (Но, пожалуйста, не делайте этого. Это сломает практически любой другой сайт, который полагается на правильность такого поведения.)