Уявіть, що .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>