Подгрузка изображений с продакшена при работе на хосте разработки

Данный пост — скорее закладка, чтобы не потерялось, а то эта полезная информация может очень быстро потеряться.

Очень часто бывает так, что в проекте используется много изображений. Иногда — неприлично много. И перекачивание всего массива изображений к себе на хост разработки становится проблемой, когда их много.

Но есть очень простое повседневное решение, которое позволяет не заниматься ерундой, а грузить картинки напрямую с боевого сайта, если их не нашлось на вашем хосте разработки.

Вариант подключения зависит от веб-сервера, который вы используете.

Apache2

Тут происходит простой 302й редирект в случае, если картинка не найдена. Этот код нужно прописать в .htaccess. Однако стоит отметить, что данный код на продакшене должен работать с заглушкой. Самый правильный вариант — использовать переменные окружения. На вашей рабочей площадке должна быть определена переменная окружения, значение которой однозначно позволит понять, что веб-сервер является сервером разработки. На наших серверах разработки установлена переменная APPLICATION_ENV=development. Таким образом, чтобы код не выполнялся на боевом сайте, можно добавить еще одно условие RewriteCond, установив предварительно переменную окружения в апаче в настройках виртуального хоста:

Nginx

Тут представлено 2 варианта — один с редиректом, а другой с обратным проксированием. Если картинка не находится веб-сервером, то происходит редирект.

Хочу сказать Спасибо Ивану Цирулеву в подготовке этого небольшого материала.