Skip to content

Commit b1ceb2e

Browse files
feat: fix redirection issue caused by incorrect PHP PATH_INFO config (#11650)
Refs #11651
1 parent 075d246 commit b1ceb2e

File tree

2 files changed

+38
-3
lines changed

2 files changed

+38
-3
lines changed

.gitignore

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,4 +62,10 @@ cmd/server/fileList.txt
6262
1Panel.code-workspace
6363

6464
core/.golangci.yml
65-
agent/.golangci.yml
65+
agent/.golangci.yml
66+
67+
.opencode
68+
openspec
69+
CLAUDE.md
70+
AGENTS.md
71+
opencode.json

agent/utils/nginx/components/server.go

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -424,12 +424,41 @@ func (s *Server) UpdatePHPProxy(proxy []string, localPath string) {
424424
},
425425
)
426426
if localPath == "" {
427+
block.AppendDirectives(&Directive{
428+
Name: "set",
429+
Parameters: []string{"$real_script_name", "$fastcgi_script_name"},
430+
})
431+
ifDir := &Directive{
432+
Name: "if",
433+
Parameters: []string{"($fastcgi_script_name ~ \"^(.+?\\.php)(/.+)$\")"},
434+
}
435+
ifDir.Block = &Block{
436+
Directives: []IDirective{
437+
&Directive{
438+
Name: "set",
439+
Parameters: []string{"$real_script_name", "$1"},
440+
},
441+
&Directive{
442+
Name: "set",
443+
Parameters: []string{"$path_info", "$2"},
444+
},
445+
},
446+
}
427447
block.AppendDirectives(
448+
ifDir,
449+
&Directive{
450+
Name: "fastcgi_param",
451+
Parameters: []string{"SCRIPT_FILENAME", "$document_root$real_script_name"},
452+
},
428453
&Directive{
429454
Name: "fastcgi_param",
430-
Parameters: []string{"SCRIPT_FILENAME", "$document_root$fastcgi_script_name"},
455+
Parameters: []string{"SCRIPT_NAME", "$real_script_name"},
431456
},
432-
)
457+
&Directive{
458+
Name: "fastcgi_param",
459+
Parameters: []string{"PATH_INFO", "$path_info"},
460+
})
461+
433462
} else {
434463
block.AppendDirectives(&Directive{
435464
Name: "fastcgi_param",

0 commit comments

Comments
 (0)