@@ -14,7 +14,6 @@ import "C"
1414import (
1515 "crypto/tls"
1616 "net"
17- "net/http"
1817 "path/filepath"
1918 "strings"
2019 "unsafe"
@@ -56,7 +55,8 @@ var knownServerKeys = []string{
5655//
5756// TODO: handle this case https://github.com/caddyserver/caddy/issues/3718
5857// Inspired by https://github.com/caddyserver/caddy/blob/master/modules/caddyhttp/reverseproxy/fastcgi/fastcgi.go
59- func addKnownVariablesToServer (thread * phpThread , request * http.Request , fc * FrankenPHPContext , trackVarsArray * C.zval ) {
58+ func addKnownVariablesToServer (thread * phpThread , fc * frankenPHPContext , trackVarsArray * C.zval ) {
59+ request := fc .request
6060 keys := mainThread .knownServerKeys
6161 // Separate remote IP and port; more lenient than net.SplitHostPort
6262 var ip , port string
@@ -168,8 +168,8 @@ func packCgiVariable(key *C.zend_string, value string) C.ht_key_value_pair {
168168 return C.ht_key_value_pair {key , toUnsafeChar (value ), C .size_t (len (value ))}
169169}
170170
171- func addHeadersToServer (request * http. Request , thread * phpThread , fc * FrankenPHPContext , trackVarsArray * C.zval ) {
172- for field , val := range request .Header {
171+ func addHeadersToServer (thread * phpThread , fc * frankenPHPContext , trackVarsArray * C.zval ) {
172+ for field , val := range fc . request .Header {
173173 if k := mainThread .commonHeaders [field ]; k != nil {
174174 v := strings .Join (val , ", " )
175175 C .frankenphp_register_single (k , toUnsafeChar (v ), C .size_t (len (v )), trackVarsArray )
@@ -184,7 +184,7 @@ func addHeadersToServer(request *http.Request, thread *phpThread, fc *FrankenPHP
184184 }
185185}
186186
187- func addPreparedEnvToServer (fc * FrankenPHPContext , trackVarsArray * C.zval ) {
187+ func addPreparedEnvToServer (fc * frankenPHPContext , trackVarsArray * C.zval ) {
188188 for k , v := range fc .env {
189189 C .frankenphp_register_variable_safe (toUnsafeChar (k ), toUnsafeChar (v ), C .size_t (len (v )), trackVarsArray )
190190 }
@@ -194,11 +194,10 @@ func addPreparedEnvToServer(fc *FrankenPHPContext, trackVarsArray *C.zval) {
194194//export go_register_variables
195195func go_register_variables (threadIndex C.uintptr_t , trackVarsArray * C.zval ) {
196196 thread := phpThreads [threadIndex ]
197- r := thread .getActiveRequest ()
198- fc := r .Context ().Value (contextKey ).(* FrankenPHPContext )
197+ fc := thread .getRequestContext ()
199198
200- addKnownVariablesToServer (thread , r , fc , trackVarsArray )
201- addHeadersToServer (r , thread , fc , trackVarsArray )
199+ addKnownVariablesToServer (thread , fc , trackVarsArray )
200+ addHeadersToServer (thread , fc , trackVarsArray )
202201
203202 // The Prepared Environment is registered last and can overwrite any previous values
204203 addPreparedEnvToServer (fc , trackVarsArray )
@@ -209,7 +208,7 @@ func go_register_variables(threadIndex C.uintptr_t, trackVarsArray *C.zval) {
209208//
210209// Adapted from https://github.com/caddyserver/caddy/blob/master/modules/caddyhttp/reverseproxy/fastcgi/fastcgi.go
211210// Copyright 2015 Matthew Holt and The Caddy Authors
212- func splitPos (fc * FrankenPHPContext , path string ) int {
211+ func splitPos (fc * frankenPHPContext , path string ) int {
213212 if len (fc .splitPath ) == 0 {
214213 return 0
215214 }
0 commit comments