2017-01-05 3 views
0

Прямо сейчас мне приходится менять файл js чаще, чем нет. проблемы с кешем у половины пользователей. Следующее решение, добавитьПроблемы с кешем js и возможное решение

?v=x 

позади. Конечно, почему бы и нет. Но, конечно, я почти всегда забывал изменить это число.

Итак, я придумал это решение.

<script src="js/main.js?v=<?php echo md5_file('js/main.js'); ?>"></script> 

Является ли md5_file слишком дорогим? Сейчас он работает как шарм, но я действительно не знаю, будет ли это на больших сайтах очень плохо для сервера.

Любые мысли или альтернативные решения?

+0

Вместо использования md5, почему бы не использовать случайное число? http://stackoverflow.com/a/7413275/2026740 –

+0

@ DanielCorzo Честно говоря, я всегда забываю изменить это число после того, как я его сменил, поэтому я снова начинаю с проблем с кешем. Таким образом я могу забыть об этом. – monxas

ответ

0

Можете ли вы использовать дату последнего изменения файла? Или, если вы не возражаете, что это никогда не кэширование, вы можете использовать случайное число.

+0

Да, я пытаюсь сохранить функциональность кеширования. Могу ли я получить последнюю измененную дату из файла в php? было бы дешевле, чем использовать md5_file? – monxas

+0

@monxas, возможно, вы можете использовать [this] (http://php.net/manual/en/function.filemtime.php). Я предполагаю, что это будет дешевле, чем хэширование всего файла, чтобы убедиться, что вы можете написать простой тестовый скрипт, который измеряет время выполнения обоих. – Bastiaanus