我正在使用.htaccess文件来允许我的页面调用gzip压缩的JavaScript文件。

在ie8和ff3中可以正常工作,但脚本未加载到Safari(或Chrome)中。

这是我正在使用的.htaccess文件:

<files *.js.gz>
ForceType text/javascript
Header set Content-Encoding: gzip
</files>

然后,例如,我可以从HTML页面调用JS文件:

<script src="foo.js.gz"></script>

如何修改上面的.htaccess代码以使其在Safari上运行(并在其他浏览器上仍然运行)?

#1楼 票数:4 已采纳

我假设您正在尝试使用Gzip压缩来更快地下载资产和文本内容。 这是加快网站速度的绝佳技术。

Safari,Chrome和IE6都存在Gzipped下载问题。 另外,Apache将为您执行gzip压缩,无需手动gzip文件。 试试以下代码片段:

# This uses mod_deflate, which is pretty standard on Apache 2.  Loading
# mod_deflate looks like this:
#
#   LoadModule deflate_module modules/mod_deflate.so
#
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/xml application/xhtml+xml text/javascript text/css application/x-javascript
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \\bMSIE !no-gzip !gzip-only-text/html

在从Apache发送出去之前,这应该安全地压缩所有文本,并且仅适用于支持该文本的浏览器。 您可以正常链接到JavaScript和其他资产,仅链接到myscript.js ,而无需gz扩展名或磁盘压缩。

  ask by edt translate from so

未解决问题?本站智能推荐:

7回复

预压缩gzip在chrome上打破,为什么?

我在我的网站上提供预压缩的CSS和JS文件,IE6-8和FF与我的.htaccess文件完美配合。 我已经调用了扩展名为.gz的文件[示例]: 那么为什么谷歌Chrome会中断呢? 谢谢。
1回复

如何确定内容是否在Safari中以gzip压缩?

如果我比较chrome和safari中的“ Content-Length”,则表示相同。 但是“编码”和“解码”值在野生动物园中显示相同,但​​在Chrome中有所不同。 还有其他我可以用来比较chrome和safari的参数(如果已压缩或未压缩)? 请注意,我正在检查返回JSON对象的
1回复

Webkit浏览器(Chrome,Safari)两次加载从.htaccess重定向的页面!

我有这个问题。 当您访问PHP代码所在的页面时: 页面通过.htaccess重定向 因此,在非Webkit浏览器中,您将在下次刷新2、3、4、5 ...时看到1,但是在Chrome或Safari中,您将看到1、3、5、7,... 有人知道如何解决吗? 我只需要将每个页面重定向到i
1回复

Safari:使用GZIP时“无法解码原始数据”

我遇到的问题是,当我压缩文件(在这种情况下为jquery),然后保存该gzip内容并使用Content-Encoding:gzip标头将其传递到浏览器时,它将在除Safari之外的所有浏览器中工作确实指出:“无法解码原始数据” 我需要已经压缩过内容,因为这将从一个µ-Controller交付
1回复

Safari不通过accept-encoding:gzip,deflate

我正在向Cloudfront CDN提出请求并看到非常令人沮丧的行为。 在chrome和firefox中,请求传递了正确的accept-encoding:gzip, deflate header。 但是,safari不会这样做,因此获得文件的未压缩版本。 这是HTML文档中的简单脚本标记
1回复

JavaScript-如何告知Chrome浏览器,Firefox,Safari浏览器允许我禁用刷新按钮?

我在需要存储var algorithmToApply=1 or etc地方运行逻辑应用程序; 我的每个值都分配了相对算法。 主要问题是在测试人们单击浏览器刷新按钮时,我的所有应用程序逻辑崩溃。 我如何使用JavaScript请求浏览器(Opera或Chrome,也可以选择Firefox
1回复

Safari浏览器无法读取CSS

我的网站在Chrome / Firefox浏览器上运行正常,但响应速度很快,而在野生动物园浏览器上一切都混乱了。 我认为这背后的原因是对包含媒体查询的CSS文件的误读。 因为我有Windows设备,所以我无法弄清楚出了什么问题,因为我无法在Safari浏览器中检查控制台。 http:
1回复

如何在.htaccess中使用?ver启用gzip.js?

我有以下代码的.htaccess 但是Google PageSpeed Insights仍然告诉我,我的所有.js?ver =文件均未压缩。 我已经使用firebug检查了此文件,是的,内容类型为“ application / javascript”,但压缩不起作用。 但是,gzip适用