src/server/daemon/location.c

changeset 737
b240ff52cee5
parent 702
ee80191310ca
--- a/src/server/daemon/location.c	Wed Mar 18 21:42:35 2026 +0100
+++ b/src/server/daemon/location.c	Thu Mar 19 21:00:01 2026 +0100
@@ -116,6 +116,26 @@
         if(cxListAdd(location->rewrite, rule)) {
             return 1;
         }
+    } else if(!cx_strcasecmp(name, "ProxyPass")) {
+        location->config.proxy_url = cx_strdup_a(a, dir->args->value);
+        if(!location->config.proxy_url.ptr) {
+            return 1;
+        }
+    } else if(!cx_strcasecmp(name, "ProxyHeader")) {
+        if(!location->config.proxy_headers) {
+            location->config.proxy_headers = cxLinkedListCreate(a, CX_STORE_POINTERS);
+            if(!location->config.proxy_headers) {
+                return 1;
+            }
+        }
+        StringTemplate *header_tpl = string_template_compile(a, cx_strcast(dir->args->value));
+        if(!header_tpl) {
+            return 1;
+        }
+        if(cxListAdd(location->config.proxy_headers, header_tpl)) {
+            string_template_free(header_tpl);
+            return 1;
+        }
     }
     
     return 0;

mercurial