Представьте себе .js
файлы помещены в/my-site/some/path/ui/js/myfile.js
Обычно тег скрипта выглядит так:
<script src="/my-site/some/path/ui/js/myfile.js"></script>
Теперь измените это на:
<script src="/my-site/some/path/ui-1111111111/js/myfile.js"></script>
Теперь, конечно, это не сработает. Чтобы он заработал, вам нужно добавить одну или несколько строк в вашу .htaccess
Важную строку: (весь .htaccess внизу)
RewriteRule ^my-site\/(.*)\/ui\-([0-9]+)\/(.*) my-site/$1/ui/$3 [L]
Итак, что это делает, это как бы удаляет 1111111111
из пути и ссылается на правильный путь.
Итак, теперь, если вы внесете изменения, вам просто нужно изменить номер 1111111111
на любое число, которое вы хотите. И как бы вы ни включали свои файлы, вы можете установить это число с помощью метки времени, когда js-файл был последний раз изменен. Так что кеш будет нормально работать, если номер не изменится. Если он изменится, он будет обслуживать новый файл (ДА ВСЕГДА), потому что браузер получает полный новый URL-адрес и просто считает, что файл настолько новый, что он должен пойти и получить его.
Вы можете использовать это для того CSS
, favicons
что когда-либо будет кэшироваться. Для CSS просто используйте так
<link href="http://my-domain.com/my-site/some/path/ui-1492513798/css/page.css" type="text/css" rel="stylesheet">
И будет работать! Легко обновлять, просто поддерживать.
Обещанный полный .htaccess
Если у вас еще нет .htaccess, это минимум, который вам нужен:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^my-site\/(.*)\/ui\-([0-9]+)\/(.*) my-site/$1/ui/$3 [L]
</IfModule>