使用Apache通过HTTPS / SSL提供gzip资产

时间:2017-05-04 02:39:46

标签: ruby-on-rails apache ssl gzip

我有一个Rails应用程序所以当我预编译时,gzip资产也会为我编译。我使用以下Apache配置来提供gzip资产:

<Location /assets/>
    RewriteEngine on

    # Make sure the browser supports gzip encoding before we send it
    # without it, Content-Type will be "application/x-gzip"

    RewriteCond %{HTTP:Accept-Encoding} \b(x-)?gzip\b
    RewriteCond %{REQUEST_FILENAME}.gz -s
    RewriteRule ^(.+) $1.gz [L]
</Location>

# Also add a content-encoding header to tell the browser to decompress

<FilesMatch \.css\.gz$>
    ForceType text/css
    Header set Content-Encoding gzip
</FilesMatch>

<FilesMatch \.js\.gz$>
    ForceType text/javascript
    Header set Content-Encoding gzip
</FilesMatch>

但是,我注意到这不适用于https SSL网站。它适用于http网站。如何让Apache在https上提供gzip资产?我不需要使用mod_deflate因为我编译Rails资产时已经编译了我的gzip资源。

1 个答案:

答案 0 :(得分:0)

正如评论中提到的@Capsule一样,除了<VirtualHost _default_:443>之外,我还需要将gzip配置块添加到<VirtualHost *:80>