Wyobraź sobie, że .js
pliki są umieszczone w/my-site/some/path/ui/js/myfile.js
Więc normalnie tag script wyglądałby tak:
<script src="/my-site/some/path/ui/js/myfile.js"></script>
Teraz zmień to na:
<script src="/my-site/some/path/ui-1111111111/js/myfile.js"></script>
Teraz oczywiście to nie zadziała. Aby to działało, musisz dodać jedną lub kilka linii do swojego .htaccess
. Ważna linia to: (cały .htaccess na dole)
RewriteRule ^my-site\/(.*)\/ui\-([0-9]+)\/(.*) my-site/$1/ui/$3 [L]
Więc to, co to robi, to rodzaj usuwania 1111111111
ze ścieżki i łączy do właściwej ścieżki.
Więc teraz, jeśli wprowadzisz zmiany, wystarczy zmienić liczbę 1111111111
na dowolną liczbę. Jakkolwiek dołączasz swoje pliki, możesz ustawić tę liczbę za pomocą sygnatury czasowej, kiedy plik js był ostatnio modyfikowany. Więc pamięć podręczna będzie działać normalnie, jeśli liczba się nie zmieni. Jeśli się zmieni, będzie obsługiwał nowy plik (TAK ZAWSZE), ponieważ przeglądarka otrzymuje kompletny nowy adres URL i po prostu uważa, że plik jest tak nowy, że musi go pobrać.
Można użyć do tego CSS
, favicons
i co kiedykolwiek dostaje buforowane. W przypadku CSS po prostu użyj w ten sposób
<link href="http://my-domain.com/my-site/some/path/ui-1492513798/css/page.css" type="text/css" rel="stylesheet">
I to zadziała! Prosty w aktualizacji, prosty w utrzymaniu.
Obiecany pełny .htaccess
Jeśli nie masz jeszcze .htaccess, jest to minimum, które musisz tam mieć:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^my-site\/(.*)\/ui\-([0-9]+)\/(.*) my-site/$1/ui/$3 [L]
</IfModule>