Веб-сервер Gulp не может загрузить кеш-ресурс JS
У меня есть куча файлов JS, которые были проверены во время развертывания для очистки кэша JS. Похоже на это.
<script src="dist/js/bundle.js?v=ju29jj39983eddd2"></script>
Я выполняю минификацию и сжатие, используя глоток. После того, как это будет сделано, я сохраню их в локальном каталоге, используя имя файла с добавленными значениями версии. Вот код
gulp.task('bundle', function() {
return gulp
.src(config.app_scripts) // app_scripts is an array containing list of files
.pipe(gutil.env.type === 'production' ? uglify({mangle: true}) : gutil.noop())
.pipe(gutil.env.type === 'production' ? concat('b-bundle.js?v=' + secureRand) : concat('b-bundle.js'))
.pipe(gulp.dest('dist/js'));
});
Я обслуживаю активы в среде разработки, используя gulp-webserver. Вот конфигурация. Тем не менее, он не выбирает JS-файл в каталог. Это просто откат к index.html при загрузке страницы.
//Local webserver
gulp.task('webserver', function() {
gulp.src(__dirname + '/client')
.pipe(webserver({
livereload: false,
open: false,
directoryListing: false,
fallback: 'index.html',
proxies: proxiesConf
}));
});
Я не уверен, что вызывает такое поведение. Я высоко ценю, если кто-то может мне помочь.
0 ответов
В настоящее время не рекомендуется выполнять очистку кеша со строками запроса в соответствии с:
Большинство прокси, особенно Squid до версии 3.0, не кэшируют ресурсы с символом "?" в их URL, даже если в ответе присутствует заголовок Cache-control: public. Чтобы включить кэширование прокси для этих ресурсов, удалите строки запроса из ссылок на статические ресурсы и вместо этого закодируйте параметры в самих именах файлов.
- https://gtmetrix.com/remove-query-strings-from-static-resources.html
Вместо этого вы должны (а) позволить веб-серверу аннулировать кеш, добавив в заголовок: Cache-Control: no-cache, no-store, must-revalidate
или (б) добавление хэша содержимого к имени файла ресурса.
<script src="assets/js/edf-d41d8cd98f00b204e9800998ecf8427e.min.js" />
вместо того
<script src="assets/js/edf.min.js" />
- https://medium.com/@codebyamir/a-web-developers-guide-to-browser-caching-cc41f3b73e7c
Удачи:)