我在压缩HTTPS时遇到问题。 一切都适用于 HTTP ,其中包含.htaccess中的一条规则:
<ifmodule mod_deflate.c>
AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
</ifmodule>
如果我添加第二条规则将HTTP重定向到HTTPS,压缩将停止工作: 检查GZIP压缩是否未启用GZIP :(
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://example.com/$1 [R,L]
</IfModule>
版本:
/etc/redhat-release:CentOS release 6.8 (Final)
/usr/local/cpanel/version:11.60.0.35
/var/cpanel/envtype:kvm
CPANEL=release
Server version: Apache/2.4.25 (cPanel)
Server built: Jan 4 2017 14:51:03
ea-php-cli Copyright 2016 cPanel, Inc.
PHP 5.6.29 (cli) (built: Jan 4 2017 15:08:12)
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
mysql Ver 14.14 Distrib 5.6.34, for Linux (x86_64) using EditLine wrapper
Server version: Apache/2.4.25 (cPanel)
你能告诉我吗?
答案 0 :(得分:4)
从评论中看来,您正在讨论openssl s_client命令返回的HTTPS压缩:
$ openssl s_client -connect example.com:443
<snip>
Compression: NONE
</snip>
这与每个资源上的Gzip压缩无关,因为它用于减少大型项目(通常是基于文本的项目,如HTML,CSS和Javascript)的大小,但是在SSL / TLS级别是一组额外的压缩。由于CRIME attack在2012年发布,建议不要在SSL / TLS级别使用压缩。因此,我们很期望将其报告为否。事实上,如果将其设置为“是”,则应该担心。
每个配置的资源类型的Gzip正文压缩仍应在HTTPS下使用原始配置启用,您将在浏览器开发人员工具网络选项卡中看到(按F12在大多数浏览器中打开这些)。