package dto import "github.com/1Panel-dev/1Panel/backend/utils/nginx/components" type NginxConfig struct { FilePath string `json:"filePath"` ContainerName string `json:"containerName"` Config *components.Config `json:"config"` OldContent string `json:"oldContent"` } type NginxConfigReq struct { Scope NginxKey `json:"scope"` Operate NginxOp `json:"operate"` WebSiteID uint `json:"webSiteId"` Params interface{} `json:"params"` } type NginxScopeReq struct { Scope NginxKey `json:"scope"` } type NginxStatus struct { Active string `json:"active"` Accepts string `json:"accepts"` Handled string `json:"handled"` Requests string `json:"requests"` Reading string `json:"reading"` Writing string `json:"writing"` Waiting string `json:"waiting"` } type NginxKey string const ( Index NginxKey = "index" LimitConn NginxKey = "limit-conn" SSL NginxKey = "ssl" HttpPer NginxKey = "http-per" ) type NginxOp string const ( ConfigNew NginxOp = "add" ConfigUpdate NginxOp = "update" ConfigDel NginxOp = "delete" ) var ScopeKeyMap = map[NginxKey][]string{ Index: {"index"}, LimitConn: {"limit_conn", "limit_rate", "limit_conn_zone"}, SSL: {"ssl_certificate", "ssl_certificate_key"}, HttpPer: {"server_names_hash_bucket_size", "client_header_buffer_size", "client_max_body_size", "keepalive_timeout", "gzip", "gzip_min_length", "gzip_comp_level"}, } type NginxScope string const ( NginxHttp NginxScope = "http" NginxServer NginxScope = "server" NginxEvents NginxScope = "events" ) var RepeatKeys = map[string]struct { }{ "limit_conn": {}, "limit_conn_zone": {}, } type NginxParam struct { Name string `json:"name"` SecondKey string `json:"secondKey"` Params []string `json:"params"` }