【问题标题】:Apache 2.4 gzip compression not work on JS but work on CSSApache 2.4 gzip 压缩不适用于 JS,但适用于 CSS
【发布时间】:2014-10-06 14:40:36
【问题描述】:

带有 mod_deflate 的 Apache 2.4 压缩 CSS 但不压缩 JS

.htaccess

# Proper MIME types for all files
<IfModule mod_mime.c>
    AddType application/javascript  js
    AddType text/css                css
</IfModule>

<IfModule mod_deflate.c>
    <IfModule mod_setenvif.c>
        <IfModule mod_headers.c>
             SetEnvIfNoCase ^(Accept-EncodXng|X-cept-Encoding|X{15}|~{15}|-{15})$ ^((gzip|deflate)\s*,?\s*)+|[X~-]{4,13}$ HAVE_Accept-Encoding
            RequestHeader append Accept-Encoding "gzip,deflate" env=HAVE_Accept-Encoding
        </IfModule>
    </IfModule>

    <IfModule mod_filter.c>
        AddOutputFilterByType DEFLATE application/javascript text/css               
    </IfModule>
</IfModule>

site.com/src/css/core.css的响应正常(编码:30.38 KiB / 解码:146.31 KiB)

Status: HTTP/1.1 200 OK
Connection: close   
Expires:    Tue, 06 Oct 2015 14:55:59 GMT   
Date:   Mon, 06 Oct 2014 14:55:59 GMT   
Content-Type:   text/css; charset=utf-8 
Server: Apache  
Accept-Ranges:  bytes   
Last-Modified:  Mon, 06 Oct 2014 13:13:31 GMT   
Vary:   Accept-Encoding 
Cache-Control:  max-age=31536000    
Transfer-Encoding:  chunked 
Content-Encoding:   gzip    
Vary:   Accept-Encoding

site.com/src/js/core.js 的回应是 KO

Status: HTTP/1.1 200 OK
Connection: close   
Content-Length: 236437  
Expires:    Tue, 06 Oct 2015 14:57:50 GMT   
Date:   Mon, 06 Oct 2014 14:57:50 GMT   
Content-Type:   application/javascript; charset=utf-8   
Server: Apache  
Accept-Ranges:  bytes   
Last-Modified:  Mon, 06 Oct 2014 12:49:48 GMT   
Vary:   Accept-Encoding 
Cache-Control:  max-age=31536000

http.conf(活动模块)

LoadModule access_compat_module modules/mod_access_compat.so
LoadModule alias_module modules/mod_alias.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule expires_module modules/mod_expires.so
LoadModule filter_module modules/mod_filter.so
LoadModule headers_module modules/mod_headers.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule cache_disk_module modules/mod_cache_disk.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule status_module modules/mod_status.so

为什么,apache 2.4 不压缩JS,而是压缩CSS??

【问题讨论】:

    标签: apache .htaccess gzip mod-deflate


    【解决方案1】:

    一切看起来都正确......

    我记得我在 Forefront TMG 代理防火墙上遇到过同样的事情,默认情况下它不会在 application/javascript 类型的请求中传递 Content-Encoding 标头。

    如果您有防火墙,请检查您的防火墙...

    【讨论】:

    • 你是如何修复最前沿的 TMG javascript mime 类型的?
    猜你喜欢
    • 1970-01-01
    • 2020-08-12
    • 2016-03-09
    • 1970-01-01
    • 2018-07-15
    • 2014-03-23
    • 2016-10-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多