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

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

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

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

Apache2

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} \.(gif|jpe?g|png|ico)$
RewriteRule ^(.*)$ http://example.com/$1 [R,NC,L]

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

RewriteCond %{ENV:APPLICATION_ENV} ^development$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} \.(gif|jpe?g|png)$
RewriteRule ^(.*)$ http://example.com/$1 [R,NC,L]

Nginx

location @fallback {
        # Версия с редиректом
        # return 302 http://example.com/$uri;

        # Версия с обратным проксированием
        proxy_set_header Host         "example.com";
        proxy_pass                    http://example.com;
}
location ~* ^.+.(jpg|jpeg|gif|png|ico)$ {
        gzip                        off;
        error_page                  404 = @fallback;
}

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

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