Estoy dividiendo una de mis aplicaciones más grandes e introduciendo una url 'cdn' para alojar objetos comunes como CSS, javascript e imágenes para evitar la duplicación. Lo que tengo que hacer, sin embargo, es tener direcciones URL separadas para nuestros entornos dev, así que puede tener:.URL dinámicas en CSS/JS
http://cdn-dev.example.com
http://cdn-qua.example.com
http://cdn.example.com
dependiendo de qué entorno que estamos trabajando en lo que puedo conseguir que esto funcione para las cosas que se generan por nuestro código PHP, pero estoy perdido por los archivos .css y .js que serán llamados. Por ejemplo, ¿cómo hago algo como:
.cool-button { background-image: url('http://cdn.example.com/images/button.png'); }
cambiar entre los diferentes dominios?
¿Cuál es la mejor manera de lidiar con eso?
[EDIT]
Sólo para que todo el mundo está clara, la dirección de CDN es un dominio diferente que el sitio. Por lo tanto, el sitio de desarrollo podría ser http://www-dev.domain.com que usaría http://cdn-dev.domain.com
. Sin embargo, usualmente coloco la carpeta de imágenes en una carpeta de tema CSS, ya que me permite usar nombres de imágenes que no son específicos de un documento de hoja de estilos en particular. Podría tener un button.png en/this_theme/y el mismo nombre de archivo en/that_theme/y la definición de clase podría ser la misma. –
No confunda las rutas URI relativas/absolutas con URI absolutas/relativas. Porque '/ css/style.css' es una ruta de URI absoluta pero una URI relativa. Y 'http: // cdn.example.com/css/style.css' (que comienza con' http: // ') es un URI absoluto, pero no una ruta URI (solo contiene una ruta URI). – Gumbo
Por supuesto, esto solo funciona si aloja el archivo css exactamente en el mismo dominio que las imágenes, que a menudo no es el caso –