我怎么能gzip我的JavaScript和CSS文件?

Fri*_*ons 17 javascript css apache gzip http

我有一个问题,我必须gzip一个原型Lib,但我完全不知道如何做到这一点,从哪里开始,它是如何工作的.:)

我找到一些教程,但这没有帮助......

所以我的JS文件有一个文件夹:

/ compressed/js/1.js 2.js 3.js

我在这个文件中调用这些文件进行测试

/compresses/index.php

<link rel="javascript" type="text/js" href="js/tabs.js" />
<link rel="javascript" type="text/js" href="js/fb.js" />
Run Code Online (Sandbox Code Playgroud)

那我该怎么办?:)

eli*_*ias 19

您可以使用apache的mod_deflate自动压缩文件.

例:

AddOutputFilterByType DEFLATE text/html text/xml text/css text/javascript 
Run Code Online (Sandbox Code Playgroud)

[编辑]

要检查您的apache服务器是否已启用输出压缩,请将上面的示例放入.htaccess文件中.然后通过服务器加载html或js文件并检查标题为"Content-Encoding",如果它说gzip或deflate,则启用它.


Wai*_*rim 13

将此代码添加到.htaccess中它将gzip所有的css和js文件.

# BEGIN GZIP
<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
</ifmodule>
# END GZIP
Run Code Online (Sandbox Code Playgroud)

  • 是的,这就是你所要做的! (3认同)
  • 抱歉,这是一个愚蠢的问题,但这是我所要做的吗?我不需要手动gzip文件吗?只是将其粘贴在.htaccess中? (2认同)

小智 6

我上面的例子类似于这个工作很好,但没有压缩javascript.我需要添加application/javascript.

AddOutputFilterByType DEFLATE text/html text/xml text/css text/javascript application/javascript 
Run Code Online (Sandbox Code Playgroud)


小智 5

嗨,如果您使用的是Nginx 服务器,上述内容将无济于事。请编辑 with 命令vi /etc/nginx/nginx.conf并添加以下行。

gzip on;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types    text/plain text/html text/css
          application/x-javascript text/xml
          application/xml application/xml+rss
          text/javascript;
Run Code Online (Sandbox Code Playgroud)

使用命令重新启动 nginx /etc/init.d/nginx reload。它将压缩 JS 和 CSS 文件。