![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 51 Pomógł: 1 Dołączył: 4.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Sprawa wygląda tak:
w domenie głównej mam sobie stronę, pliki css i js trzymam na innym serwerze i w innej subdomenie. Teraz jak coś zmieniam w plikach css to na stronce plik się nie odświeża do czasu aż wcisnę ctrl+f5, tak jakby przeglądarka nie wiedziała, że plik się zmienił.... Jak mam to zrobić, żeby ludziom ładowały się nowe style po każdej mojej zmianie w plikach? Dodam jeszcze, że pliki css i js trzymam w tej subdomenie statycznie, nie są generowane przez żadne skrypty. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Dodam jeszcze, że pliki css i js trzymam w tej subdomenie statycznie, nie są generowane przez żadne skrypty. Dopisuj losowy ciąg znaków w query string. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 14 Dołączył: 3.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Losowy ciąg znaków to złe rozwiązanie - za każdym razem przeglądarka będzie na nowo wczytywać plik css. Dużo lepszym rozwiązaniem jest dopisywanie czasu modyfikacji pliku. No chyba że mówisz o ręcznym wpisywaniu losowej wartości po każdej edycji pliku css.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 51 Pomógł: 1 Dołączył: 4.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Zmiana nazwy pliku nie wchodzi raczej w grę, tak naprawdę to kilka serwisów korzysta z tych styli.....
Musiałbym to w wielu miejscach zmieniać, tak robię właśnie teraz ale jest to kłopotliwe i dlatego szukam innego rozwiązania. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
@ujex: nikt tu nie mówi o zmianie nazwy pliku, jak masz plik który nazywa się np style.css to zamiast sładni
używasz np takiej
gdzie 12345678 to aktualny timestamp dla daty modyfikacji pliku możesz go uzysjać przez funkcję filemtime dzięki temu przeglądarka automatycnzie pobierze nową wersję styli/skryptu po zmianie bo przez nią taki plik będzie uznany za nowy Ten post edytował devnul 29.09.2010, 11:39:49 -------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 51 Pomógł: 1 Dołączył: 4.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Wiem o co wam chodzi, może ja się nie jasno wypowiadam...
Twoje rozwiązanie jest złe, ba jak już kolega wcześniej zauważył..... Cytat Losowy ciąg znaków to złe rozwiązanie - za każdym razem przeglądarka będzie na nowo wczytywać plik css. a mi chodzi tylko o to, żeby pobierała plik w momencie kiedy ja w nim wykonam zmianę.... Ten post edytował ujex 29.09.2010, 11:42:46 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
Cytat a mi chodzi tylko o to, żeby pobierała plik w momencie kiedy ja w nim wykonam zmianę.... przeczytaj mojego posta oczko wyżej, jak chwilę pomyślisz to zobaczysz że to rozwiązanie będzie działało dokładnie tak jak chcesz
-------------------- |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 51 Pomógł: 1 Dołączył: 4.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Cytat z mojego pierwszego posta:
Cytat w domenie głównej mam sobie stronę, pliki css i js trzymam na innym serwerze i w innej subdomenie.
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 159 Pomógł: 5 Dołączył: 31.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
ja zawsze dopisuje do pliku np. style.css parametr reload=1
czyli style.css?reload=1 i jak pozmieniam to ręcznie zmieniam na kolejną liczbę ![]() -------------------- |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 561 Pomógł: 72 Dołączył: 15.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Najlepiej chyba dopisać z automatu datę modyfikacji tego pliku w formacie unixowym. style.css?1234123
Po każdej modyfikacji się zmienia i nic nie trzeba ręcznie robić bo przecież można tą datę wyciągnąć z pliku za pomocą PHP ![]() -------------------- Nawet świnka może wejść na drzewo kiedy jest chwalona :)
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
@krowal: 6 postów wyżej...
-------------------- |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 623 Pomógł: 79 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Dołączę się, bo mam podobny problem, a wygląda na to, że nie zrozumieliście
![]() Cytat pliki css i js trzymam na innym serwerze i w innej subdomenie. Zmiana nazwy pliku nie wchodzi raczej w grę, tak naprawdę to kilka serwisów korzysta z tych styli Nie da się przecież pobrać daty modyfik. pliku, który znajduje się w innej domenie. A jako, że dany plik css/js jest używany przez np. 100 innych stron, to też modyfikacja losowej wartości na tych stronach (za każdym razem, gdy zmienimy dany plik js/css) nie wchodzi w rachubę. Przydałby się więc jakś odpowiedni string w funkcji php header() który mówi: data modyfikacji jest taka a siaka, ściągnij ten plik, jeśli jest nowsza niż w cachu. Swego czasu dużo czytałem o tym i prostego rozwiązania nie znalazłem, co mi się wydaje dość dziwne. Pewnie źle szukałem. Ten post edytował konrados 19.10.2010, 12:11:32 |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
-------------------- |
|
|
![]()
Post
#15
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Nie da się przecież pobrać daty modyfik. pliku, który znajduje się w innej domenie. Ekhm, a get_headers, to co? Cytat Przydałby się więc jakś odpowiedni string w funkcji php header() który mówi: data modyfikacji jest taka a siaka, ściągnij ten plik, jeśli jest nowsza niż w cachu. manual dla get_headers nawet: Cytat Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
@erix: w sensie stricte że rozwiązanie jest się jak najbardziej zgadzam ale uważam że nie jest to najszczęśliwsze wykorzystanie - każdorazowe odpytanie zdalnego serwera o nagłówki jednego lub więcej plików może dać spory narzut czasowy, dlatego też uważam że dobrze zbudowane nagłówki po stronie zdalnego serwera w zupełności wystarczą
-------------------- |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 623 Pomógł: 79 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
@devnul
Ja rozumiem, i nawet używam, o takie coś robię: ; Niestety gdy używam firebuga by pokazać co się dzieje (w zakładce sieć) to okazuje się, że czasem ściąga czasem nie (!). By być pewnym, że format jest prawidłowy etc robię nawet dla testów ręcznie: Wynik ten sam. Próbowałem też z "Date:" i "Expires:". Wynik ten sam - raz sobie ff ściągnie raz nie. |
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 1 470 Pomógł: 75 Dołączył: 21.09.2005 Skąd: że znowu Ostrzeżenie: (0%) ![]() ![]() |
temat jest obszerny ale jakbyś przegooglał się przez podstawowe pojęcia to dotarłbyś do tego - dalej już z górki. Poza tym możesz dobrze skonfigurować apacha i zrobi wszystko sam - doda odpowiednie nagłówki, ustawi czas modyfikacji i wygaśnięcia, skompresuje itp ale ograniczenie się do przekopiowania bez myślenie przykładów znalezionych w necie jest raczej kiepskim pomysłem tym bardziej jeśli bierzemy pierwszy wypluty przez google przykład
-------------------- |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 623 Pomógł: 79 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki, spojrzę.
Właśnie jak ostatnio interesowałem się tym tematem, to też skończyłem na jakiejś stronie, która po wydrukowaniu byłaby grubsza niż encyclopedia britannica ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 1.07.2025 - 02:18 |