是否可以针对特定文件扩展名全局修改WEBrick
HTTP响应标头,例如,提供扩展名为svgz
的所有文件以包含HTTP标头“ HTTP响应中的内容编码:gzip “?我似乎无法弄清楚如何做到这一点。
答案 0 :(得分:0)
<强> LIB / DPS / compression.rb 强>
module Dps
class Compression
def initialize(app)
@app = app
end
def call(env)
status, headers, response = @app.call(env)
if File.extname(env['REQUEST_URI']) == ".svgz" && status == 200
headers["Content-Encoding"] = "gzip"
else
nil
end
[status, headers, response]
end
end
end
<强>配置/ application.rb中强>
config.autoload_paths += Dir["#{config.root}/lib/**/"]
config.middleware.insert_before("ActionDispatch::Static", "Dps::Compression")