Open liwenson opened 1 month ago
使用openresty的lua脚本,减少nginx域名的配置
# Server 区域 server { listen 443 ssl; server_name hub.your_domain_name gcr.your_domain_name ghcr.your_domain_name quay.your_domain_name k8s-gcr.your_domain_name k8s.your_domain_name mcr.your_domain_name elastic.your_domain_name nvcr.your_domain_name; ## 证书文件名称(填写你证书存放的路径和名称) ssl_certificate your_domain_name.crt; ## 私钥文件名称(填写你证书存放的路径和名称) ssl_certificate_key your_domain_name.key; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; ssl_buffer_size 8k; proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600; # 动态设置 proxy_pass location / { set_by_lua_block $backend { local backend_mapping = { ["gcr.your_domain_name"] = "http://127.0.0.1:53000", ["ghcr.your_domain_name"] = "http://127.0.0.1:52000", ["quay.your_domain_name"] = "http://127.0.0.1:56000", ["k8s-gcr.your_domain_name"] = "http://127.0.0.1:54000", ["k8s.your_domain_name"] = "http://127.0.0.1:55000", ["mcr.your_domain_name"] = "http://127.0.0.1:57000", ["elastic.your_domain_name"] = "http://127.0.0.1:58000", ["nvcr.your_domain_name"] = "http://127.0.0.1:59000", ["hub.your_domain_name"] = "http://127.0.0.1:51000" } return backend_mapping[ngx.var.host] or "http://localhost:51000" } # 动态代理请求 proxy_pass $backend; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Nginx-Proxy true; } }
No response
👍
⚠️ 搜索是否存在类似issue
总结
使用openresty的lua脚本,减少nginx域名的配置
举例
No response
动机
No response