Firefox 38.0.1 throws errors in console with JS and CSS htaccess compression enabled
hi,
I have been working on improving performance on my Wordpress site, one of the things I have done, I switched to dynamic delivery of CSS and JS files (so they are compressed by PHP), which worked very well for performance tests.
Now, I have ALSO added this to the .htaccess in my JS and CSS folder (wp-incldues) on a wordpress site:
<filesMatch "\.(js|css)$"> Header set Content-Encoding x-deflate # Header set Content-Encoding compress # Header set Content-Encoding x-gzip </filesMatch>
for compressing JS and CSS files. this works fine on IE, CSS, Android and speed tests, but the bad thing is that the website appears broken in Firefox 38.0.1, it cannot load my menus and Revolution Slider (image carousel).
main error seems to be jQuery is not defined..
here is a collage that shows the errors...https://dl.dropboxusercontent.com/u/28979877/FirefoxErrorsCollage.png
is there anything else i could change in that .htaccess syntax that will make every browser happy?
any thoughts?
many thanks, Gabrio
この投稿は cor-el により
選ばれた解決策
hi there,
I have turned off the feature from .htaccess for now...
We found out (with the help of Frank from Autoptimize, which I can TOTALLY recommend by the way, he is great!!) that it can't work because what that is doing is declaring the output is compressed, but not actually ... compressing. so firefox is right, the others are wrong.
this should be used, IF the server supports it (ours does not since it's just shared):
<IfModule mod_deflate.c>
<FilesMatch "\.(js|css)$"> SetOutputFilter DEFLATE </FilesMatch> </IfModule>
so for the time being, i have removed the .htaccess to compress JS and CSS folders and FF is happy now.
thanks, Gabrio
この回答をすべて読む 👍 0すべての返信 (3)
You can reload web page(s) and bypass the cache to refresh possibly outdated or corrupted files.
- Hold down the Shift key and left-click the Reload button
- Press "Ctrl + F5" or press "Ctrl + Shift + R" (Windows,Linux)
- Press "Command + Shift + R" (Mac)
Is jQuery loading and getting decompressed before the code that calls it? You can observe loading order to some extent in the Network Monitor:
Open the web console is the lower part of the tab below your page, click Network on its top bar, then reload your page and check the responses and timings.
This might be related: When Firefox 33 was released, an issue surfaced with compressed files where the server did not report the correct length of the file after compression and Firefox therefore treated the file received as corrupted. More info in this thread: Error while downloading file with Firefox 33.
選ばれた解決策
hi there,
I have turned off the feature from .htaccess for now...
We found out (with the help of Frank from Autoptimize, which I can TOTALLY recommend by the way, he is great!!) that it can't work because what that is doing is declaring the output is compressed, but not actually ... compressing. so firefox is right, the others are wrong.
this should be used, IF the server supports it (ours does not since it's just shared):
<IfModule mod_deflate.c>
<FilesMatch "\.(js|css)$"> SetOutputFilter DEFLATE </FilesMatch> </IfModule>
so for the time being, i have removed the .htaccess to compress JS and CSS folders and FF is happy now.
thanks, Gabrio
この投稿は gabrio により