mirror of
https://github.com/caddyserver/caddy.git
synced 2024-12-23 22:27:38 -05:00
fix #127
fixes issue with Status header coming from php-fpm 5.5 different then regular "HTTP/1.1 200 OK". If server returns Status code - "200" will be handled properly instead "throwing runtime error: index out of range"
This commit is contained in:
parent
01aca02edc
commit
14b64fef43
1 changed files with 12 additions and 3 deletions
|
@ -375,12 +375,21 @@ func (c *FCGIClient) Request(p map[string]string, req io.Reader) (resp *http.Res
|
|||
resp.Header = http.Header(mimeHeader)
|
||||
|
||||
if resp.Header.Get("Status") != "" {
|
||||
statusParts := strings.SplitN(resp.Header.Get("Status"), " ", 2)
|
||||
resp.StatusCode, err = strconv.Atoi(statusParts[0])
|
||||
|
||||
// check if Status is long enought to split
|
||||
if strings.Count(resp.Header.Get("Status"), " ") > 0 {
|
||||
statusParts := strings.SplitN(resp.Header.Get("Status"), " ", 2)
|
||||
resp.StatusCode, err = strconv.Atoi(statusParts[0])
|
||||
resp.Status = statusParts[1]
|
||||
resp.Status = statusParts[1]
|
||||
} else {
|
||||
resp.StatusCode, err = strconv.Atoi(resp.Header.Get("Status"))
|
||||
}
|
||||
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
resp.Status = statusParts[1]
|
||||
|
||||
} else {
|
||||
resp.StatusCode = http.StatusOK
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue