From f161f410853ab1a8e8ebad7bf19754d3771d9412 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 21 Apr 2014 01:23:06 +0000 Subject: extras/exec_cgi: pass SCRIPT_NAME from Rack env Using the full, filesystem path name to our script is wrong and not according to RFC 3875. --- extras/exec_cgi.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/extras/exec_cgi.rb b/extras/exec_cgi.rb index f718f7b..234a089 100644 --- a/extras/exec_cgi.rb +++ b/extras/exec_cgi.rb @@ -62,6 +62,7 @@ class ExecCgi SERVER_PORT SERVER_PROTOCOL SERVER_SOFTWARE + SCRIPT_NAME ).map(&:freeze) # frozen strings are faster for Hash assignments def initialize(*args) @@ -76,7 +77,7 @@ class ExecCgi # Calls the app def call(env) - cgi_env = { "SCRIPT_NAME" => @args[0], "GATEWAY_INTERFACE" => "CGI/1.1" } + cgi_env = { "GATEWAY_INTERFACE" => "CGI/1.1" } PASS_VARS.each { |key| val = env[key] and cgi_env[key] = val } env.each { |key,val| cgi_env[key] = val if key =~ /\AHTTP_/ } pipe = MyIO.pipe -- cgit v1.2.3-24-ge0c7