Sha256: e2f5d3b33c9dfa8b5b535d86f2bca7146ce373a805456f58e33ce2e1ccc9d57f

Contents?: true

Size: 614 Bytes

Versions: 14

Compression:

Stored size: 614 Bytes

Contents

class ForwardHost < Rack::Proxy

  def rewrite_env(env)
    env["HTTP_HOST"] = "example.com"
    env
  end

  def rewrite_response(triplet)
    status, headers, body = triplet

    # example of inserting an additional header
    headers["X-Foo"] = "Bar"
    
    # if you rewrite env, it appears that content-length isn't calculated correctly
    # resulting in only partial responses being sent to users
    # you can remove it or recalculate it here
    headers["content-length"] = nil

    triplet
  end

end

Rails.application.config.middleware.use ForwardHost, backend: 'http://example.com', streaming: false

Version data entries

14 entries across 14 versions & 3 rubygems

Version Path
cm-admin-1.5.22 vendor/bundle/ruby/3.3.0/gems/rack-proxy-0.7.7/lib/rack_proxy_examples/forward_host.rb
cm-admin-1.5.21 vendor/bundle/ruby/3.3.0/gems/rack-proxy-0.7.7/lib/rack_proxy_examples/forward_host.rb
cm-admin-1.5.20 vendor/bundle/ruby/3.3.0/gems/rack-proxy-0.7.7/lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.7.7 lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.7.6 lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.7.5 lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.7.4 lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.7.2 lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.7.1 lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.7.0 lib/rack_proxy_examples/forward_host.rb
chatops-rpc-0.0.2 fixtures/chatops-controller-example/vendor/bundle/ruby/2.5.0/gems/rack-proxy-0.6.5/lib/rack_proxy_examples/forward_host.rb
chatops-rpc-0.0.1 fixtures/chatops-controller-example/vendor/bundle/ruby/2.5.0/gems/rack-proxy-0.6.5/lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.6.5 lib/rack_proxy_examples/forward_host.rb
rack-proxy-0.6.4 lib/rack_proxy_examples/forward_host.rb