Mam serwer produkcyjny i programistyczny. Problemem jest struktura katalogów.
Rozwój:
http://dev.com/subdir/images/image.jpg
http://dev.com/subdir/resources/css/style.css
Produkcja:
http://live.com/images/image.jpg
http://live.com/resources/css/style.css
Jak mogę mieć folder style.css
in, css
który używa na obu serwerach tej samej ścieżki do background: url
właściwości? Czy istnieje sztuczka, której mogę użyć ze ścieżkami względnymi?
css
relative-path
absolute-path
nascar
źródło
źródło
http://domain.com/css/style.css
. Nie jestem pewien, co można tam zrobić ... EDYCJA: - tak, powinno działać ze zaktualizowaną strukturą, zaktualizowałem odpowiedź (../
wydaje się, że jest inna ).Osobiście naprawiłbym to w pliku .htaccess. Powinieneś mieć do tego dostęp.
Zdefiniuj swój adres URL CSS jako taki:
url(/image_dir/image.png);
W swoim pliku .htacess umieść:
Options +FollowSymLinks RewriteEngine On RewriteRule ^image_dir/(.*) subdir/images/$1
lub
RewriteRule ^image_dir/(.*) images/$1
w zależności od miejsca.
źródło
miałem ten sam problem ... za każdym razem, gdy chciałem opublikować mój plik css ... musiałem wykonać wyszukiwanie / zamianę ... i ścieżka względna również nie działała, ponieważ ścieżki względne były różne od dewelopera do produkcji.
W końcu byłem zmęczony szukaniem / zastępowaniem i utworzyłem dynamiczny css, (np. Www.mysite.com/css.php) jest to samo, ale teraz mogłem użyć stałych php w css. coś podobnego
.icon{ background-image:url('<?php echo BASE_IMAGE;?>icon.png'); }
i nie jest złym pomysłem uczynienie go dynamicznym, ponieważ teraz mogę go skompresować za pomocą kompresora YUI bez utraty oryginalnego formatu na moim serwerze deweloperskim.
Powodzenia!
źródło
php
pytaniu nie ma tagu! OP może w ogóle nie używać php.<?php **** ?>
nie zostanie przetworzone