code.gitea.io/gitea@v1.19.3/modules/setting/proxy.go (about) 1 // Copyright 2021 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package setting 5 6 import ( 7 "net/url" 8 9 "code.gitea.io/gitea/modules/log" 10 ) 11 12 // Proxy settings 13 var Proxy = struct { 14 Enabled bool 15 ProxyURL string 16 ProxyURLFixed *url.URL 17 ProxyHosts []string 18 }{ 19 Enabled: false, 20 ProxyURL: "", 21 ProxyHosts: []string{}, 22 } 23 24 func loadProxyFrom(rootCfg ConfigProvider) { 25 sec := rootCfg.Section("proxy") 26 Proxy.Enabled = sec.Key("PROXY_ENABLED").MustBool(false) 27 Proxy.ProxyURL = sec.Key("PROXY_URL").MustString("") 28 if Proxy.ProxyURL != "" { 29 var err error 30 Proxy.ProxyURLFixed, err = url.Parse(Proxy.ProxyURL) 31 if err != nil { 32 log.Error("Global PROXY_URL is not valid") 33 Proxy.ProxyURL = "" 34 } 35 } 36 Proxy.ProxyHosts = sec.Key("PROXY_HOSTS").Strings(",") 37 }