Подтвердить что ты не робот

Пути изображений в CSS для поддержки CDN

Я пытаюсь развернуть наши изображения в cdn. В настоящее время css имеет относительные пути к изображениям на нашем сайте. Эти пути должны поддерживать местоположение изображения CDN. Кто-нибудь есть советы о том, как я могу это сделать?

Или, если у кого есть хороший учебник по развертыванию в CDN.


Вот как я закончил это.

  • Я использовал SASS - http://sass-lang.com/
  • У меня есть mixin cdn.scss с контентом, например $image_path: "/images/";
  • Импортировать этот микс в стиле sass @import "cdn.scss"
  • Обновить пути изображения как таковые: background: url ($ image_path + "image.png" );
  • При развертывании я изменяю переменную $image_path в mixin.scss, а затем повторно запускаю sass

ОБНОВЛЕНИЕ

Мы используем bash для обновления файла

cat > preprocess/sass/_cdn.scss <<EOT
\$image_path: "//CDN_URL/";

Пример кода в _cdn.scss

$image_path: "/public/images/";

Затем он работает по умолчанию локально, но при нажатии на производство мы запускаем bash script для обновления с использованием местоположения cdn

4b9b3361

Ответ 1

Вероятно, самым простым было бы разместить как ваши изображения, так и файл CSS на CDN. Пути изображений в вашем файле CSS относятся к самому CSS файлу, поэтому вам вообще не придется менять свой CSS.

Если это не вариант, вы застряли, добавляя полностью настроенные URL-адреса в таблицу стилей. Теперь, если вы действительно этого хотели, вы могли бы генерировать свой CSS файл динамически "на лету" и выполнять некоторую замену, чтобы на самом деле вам не пришлось жестко кодировать CDN на вашем листе.