Компрессор YUI + gzip вызывает ошибку недопустимого символа в jQuery - PullRequest
0 голосов
/ 09 июня 2010

Когда я минимизирую jquery с помощью YUI-компрессора, он работает нормально. Когда я затем добавляю сжатие gzip (и обслуживаю эту версию через переписывание модов), версия gzip выдает эту ошибку:

недопустимый символ в jquery.min.js в строке 1

Строка 1:

Ms80 * ​​1008 *! SzdKr =

Это приводит к ошибке "jquery notfined". Я использую следующие правила переписывания, чтобы обслужить gzipped версии:

#Check to see if browser can accept gzip files.
ReWriteCond %{HTTP:accept-encoding} (gzip.*)
#make sure there's no trailing .gz on the url
ReWriteCond %{REQUEST_FILENAME} !^.+\.gz$
#check to see if a .gz version of the file exists.
RewriteCond %{REQUEST_FILENAME}.gz -f
#All conditions met so add .gz to URL filename (invisibly)
RewriteRule ^(.+) $1.gz [L] 

Я не могу найти никаких ссылок на то, что это происходит с кем-то еще. Мысли?

P.S. - похоже, этот же вопрос задавали на форумах jQuery в 2008 году. У него 278 просмотров, но ответа нет: http://forum.jquery.com/topic/how-to-reference-jquery-1-2-6-min-js-when-zipped-with-gzip

1 Ответ

0 голосов
/ 09 июня 2010

Если бы мне пришлось угадывать, я бы сказал, что Apache уже распаковывает ваш JS-файл, и ваше перезапись приводит к двойному сжатию запроса.

Удалите правила перезаписи и посмотрите на файл jQuery вFirebug.Там вы увидите, подается ли оно уже сжатым.

...