// Copyright 2026 Arctel.net // SPDX-License-Identifier: Apache-2.0 package proxy_route const ( errProxyRouteNotFound = "proxy route not found" errProxyRouteIdentityExists = "proxy route identity already exists" errProxyRouteSiteNameExists = "site_name already exists" errProxyRouteDomainExists = "domain %s already exists" errProxyRouteSiteNameEmpty = "site_name cannot be empty" errProxyRouteZoneDomainsRequired = "at least one zone domain is required" errProxyRouteZoneDomainNotFound = "selected zone domain does not exist" errProxyRouteZoneDomainDuplicate = "zone_domain_ids must not contain duplicates" errProxyRouteZoneDomainBound = "selected zone domain is already bound to another proxy route" errProxyRouteOriginEmpty = "origin_url cannot be empty" errProxyRouteOriginInvalid = "origin URL format is invalid" errProxyRouteOriginScheme = "origin URL must start with http:// or https://" errProxyRouteOriginHostInvalid = "origin_host format is invalid" errProxyRouteUpstreamRequired = "at least one upstream is required" errProxyRouteUpstreamScheme = "all upstreams must use the same scheme" errProxyRouteUpstreamPath = "multi-upstream mode does not support origin paths" errProxyRouteUpstreamQuery = "multi-upstream mode does not support origin query strings" errProxyRouteOriginNotFound = "selected origin does not exist" errProxyRouteCertNotFound = "selected certificate does not exist" errProxyRouteCertRequired = "must select a certificate when HTTPS is enabled" errProxyRouteCertDomainLength = "domain_cert_ids must match domains length" errProxyRouteRedirectHTTP = "redirect_http requires enable_https" errProxyRouteBasicAuth = "basic_auth_username and basic_auth_password cannot be empty when basic auth is enabled" errProxyRouteLimitRate = "limit_rate must be a number or use the 512k / 1m format" errProxyRouteCachePolicy = "cache policy is not supported" errProxyRouteCacheSuffix = "cache suffix format is invalid" errProxyRouteCachePath = "cache path rule format is invalid" errProxyRouteCacheSuffixReq = "at least one suffix is required" errProxyRouteCachePrefixReq = "at least one path prefix is required" errProxyRouteCacheExactReq = "at least one exact path is required" errProxyRouteHeaderKeyEmpty = "custom header key cannot be empty" errProxyRouteHeaderKeyInvalid = "custom header key format is invalid" errProxyRouteHeaderNewline = "custom headers cannot contain newlines" errProxyRouteTunnelNodeReq = "tunnel_node_id is required for tunnel upstream" errProxyRouteTunnelNodeMissing = "tunnel client node does not exist" errProxyRouteTunnelNodeType = "tunnel_node_id must reference a tunnel_client node" errProxyRouteTunnelAddrReq = "tunnel_target_addr is required for tunnel upstream" errProxyRouteTunnelProtocol = "tunnel_target_protocol must be http or https" errProxyRoutePagesProjectReq = "pages_project_id is required for Pages upstream" errProxyRoutePagesNotFound = "pages 项目不存在" errProxyRoutePagesDisabled = "pages 项目未启用" errProxyRoutePagesNoDeploy = "pages 项目没有激活部署" errProxyRouteOriginSchemeOnly = "源站协议仅支持 http 或 https" errProxyRouteOriginPort = "端口格式不合法" errProxyRouteOriginPortEmpty = "端口不能为空" errProxyRouteOriginURI = "源站路径需以 / 或 ? 开头" errProxyRouteOriginURIProto = "源站路径不能包含协议" )