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

Кеширование прокси с помощью кеша, который я могу заполнить

Скажем, у меня есть исходный сайт и структура мультимедиа примерно так:

https://watch.example.com/2017-04-06/training.mp4, который представляет собой статические 5 ГБ, которые никогда не изменятся.

Теперь в удаленном месте с очень плохой интернет, Я хочу предоставить кеширующий прокси который монтирует диск емкостью 4 ТБ (который я отправил заранее), на котором эти файлы находятся в каталоге, например /media/2017-04-06/training.mp4, поэтому, когда http: //cache.local/2017-04-06/training.mp4 осуществляется доступ, он воспроизводит локально кэшированный контент. В случае сбоя прокси-сервер кеширования может загружаться с https://watch.example.com/2017-04-06/training.mp4 или клиент медиаплеера может быть закодирован для возврата к каноническому https://watch.example.com/2017-04-06/training.mp4.

Итак, после расследования nginx, к сожалению, он сохраняет содержимое и заголовки в формате md5sum в proxy_cache_path, что усложняет мою задачу по предварительному кешированию или заполнению кеша на диске.

Есть ли другое более простое решение, которое мне не хватает?

Примерно так должно работать:

server {
  server_name example.com;
  root /media;

  location / { try_files $uri $uri/ @backend; }

  location @backend {
    proxy_pass http://watch.example.com;
  }
}

Поскольку эта конфигурация не будет кэшировать то, чего у нее еще нет, но вы можете добавить в соответствующий proxy_cache настройки, если хотите.