diff --git a/test/dev_server_proxy_test.rb b/test/dev_server_proxy_test.rb index b8bee3a7..0b222d14 100644 --- a/test/dev_server_proxy_test.rb +++ b/test/dev_server_proxy_test.rb @@ -40,6 +40,14 @@ def test_vite_asset assert_forwarded to: "/vite-production/application.js" end + def test_forwards_to_configured_backend + get_with_dev_server_running "/vite-production/application.js" + + env = JSON.parse(last_response.body) + + assert_equal ViteRuby.config.origin, env["rack.backend"] + end + def test_vite_client get_with_dev_server_running "/@vite/client" diff --git a/vite_ruby/lib/vite_ruby/dev_server_proxy.rb b/vite_ruby/lib/vite_ruby/dev_server_proxy.rb index 6d877977..7e4a9523 100644 --- a/vite_ruby/lib/vite_ruby/dev_server_proxy.rb +++ b/vite_ruby/lib/vite_ruby/dev_server_proxy.rb @@ -44,6 +44,7 @@ def normalize_uri(uri) def forward_to_vite_dev_server(env) rewrite_uri_for_vite(env) env["QUERY_STRING"] ||= "" + env["rack.backend"] = URI(config.origin) env["HTTP_HOST"] = env["HTTP_X_FORWARDED_HOST"] = config.host env["HTTP_X_FORWARDED_SERVER"] = config.host_with_port env["HTTP_PORT"] = env["HTTP_X_FORWARDED_PORT"] = config.port.to_s