Почему мое кэширование JavaScript и css не?

У вас есть опечатка в вашем коде. Вы добавили сам массив, а не нужный элемент массива, поэтому вы создали строку, которая буквально содержит хеш-код вашего массива carrier.

Строка:

sb.append(carrier);

должна быть:

sb.append(carrier[0]);

Просто к вашему сведению, то, что вы считаете ссылкой, на самом деле является хеш-кодом значения поля carrier .

10
задан 8 May 2009 в 22:51
поделиться

4 ответа

Да, это правильное и хорошо известное поведение (возможно, действительно не требуется).

Прочтите http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html об ETag.

Возможно, вы хотите просто отключить ETag на server.

Edit: Также используйте аддон LiveHTTPHeaders, чтобы понять, что делает ваш браузер. Для этой задачи он работает лучше, чем FireBug.

1
ответ дан 4 December 2019 в 00:27
поделиться

У меня такая же проблема, как и у вас. Удаление etag будет работать.

Добавьте в файл конфигурации следующее: FileETag нет

1
ответ дан 4 December 2019 в 00:27
поделиться

Привет, у меня была такая же проблема. Но просто положить в FileTag, никто не работает

так, как я исправил его (и я не знаю, правильно ли это - но это работает) Я положил

FileTag None

в нижней части мой файл htaccess.

Тогда Yslow был счастлив.

0
ответ дан 4 December 2019 в 00:27
поделиться

YSlow сообщает о неправильно настроенных тегах etags, если они не соответствуют определенному шаблону. Поскольку вы сжимаете css и js, etags выводятся примерно так:

Etag "1e10-4889909861a80"-gzip

Видите -gzip в конце? Он помещается туда с помощью apache (только версия 2). Вот что вызывает «ошибку». YSlow ожидает увидеть что-то вроде этого:

Etag "xxxx-xxxxxxxxxxxxx"

По сути, вы не можете это исправить, потому что это не сломано. Так что не сходите с ума, пытаясь набрать наивысший балл, если вы не знаете, что делаете. Даже эта домашняя страница Yahoo получает только 90 баллов.

2
ответ дан 4 December 2019 в 00:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: