mirror of
https://github.com/lordmathis/llamactl.git
synced 2025-11-06 00:54:23 +00:00
Remove llama server cors headers
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
|||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
"log"
|
"log"
|
||||||
|
"net/http"
|
||||||
"net/http/httputil"
|
"net/http/httputil"
|
||||||
"net/url"
|
"net/url"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
@@ -191,19 +192,35 @@ func (i *Instance) GetProxy() (*httputil.ReverseProxy, error) {
|
|||||||
i.mu.Lock()
|
i.mu.Lock()
|
||||||
defer i.mu.Unlock()
|
defer i.mu.Unlock()
|
||||||
|
|
||||||
if i.proxy == nil {
|
if i.proxy != nil {
|
||||||
if i.options == nil {
|
return i.proxy, nil
|
||||||
return nil, fmt.Errorf("instance %s has no options set", i.Name)
|
|
||||||
}
|
|
||||||
|
|
||||||
targetURL, err := url.Parse(fmt.Sprintf("http://%s:%d", i.options.Host, i.options.Port))
|
|
||||||
if err != nil {
|
|
||||||
return nil, fmt.Errorf("failed to parse target URL for instance %s: %w", i.Name, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
i.proxy = httputil.NewSingleHostReverseProxy(targetURL)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if i.options == nil {
|
||||||
|
return nil, fmt.Errorf("instance %s has no options set", i.Name)
|
||||||
|
}
|
||||||
|
|
||||||
|
targetURL, err := url.Parse(fmt.Sprintf("http://%s:%d", i.options.Host, i.options.Port))
|
||||||
|
if err != nil {
|
||||||
|
return nil, fmt.Errorf("failed to parse target URL for instance %s: %w", i.Name, err)
|
||||||
|
}
|
||||||
|
|
||||||
|
proxy := httputil.NewSingleHostReverseProxy(targetURL)
|
||||||
|
|
||||||
|
proxy.ModifyResponse = func(resp *http.Response) error {
|
||||||
|
// Remove CORS headers from llama-server response to avoid conflicts
|
||||||
|
// llamactl will add its own CORS headers
|
||||||
|
resp.Header.Del("Access-Control-Allow-Origin")
|
||||||
|
resp.Header.Del("Access-Control-Allow-Methods")
|
||||||
|
resp.Header.Del("Access-Control-Allow-Headers")
|
||||||
|
resp.Header.Del("Access-Control-Allow-Credentials")
|
||||||
|
resp.Header.Del("Access-Control-Max-Age")
|
||||||
|
resp.Header.Del("Access-Control-Expose-Headers")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
i.proxy = proxy
|
||||||
|
|
||||||
return i.proxy, nil
|
return i.proxy, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user