--- a/src/server/daemon/config.c Sat Nov 22 16:44:42 2025 +0100 +++ b/src/server/daemon/config.c Sun Nov 23 12:44:59 2025 +0100 @@ -51,6 +51,7 @@ #include "ldap_auth.h" #include "configmanager.h" #include "resourcepool.h" +#include "location.h" #include "vserver.h" #include "../util/pblock.h" @@ -746,6 +747,18 @@ } vs->acls = acldata; + CxList *locations = serverconfig_get_node_list(obj, CONFIG_NODE_OBJECT, CX_STR("Location")); + CxIterator i = cxListIterator(locations); + cx_foreach(ConfigNode *, node, i) { + WSLocation *location = cfg_location_get(cfg->a, node); + if(location) { + vs_add_location(vs, location); + } else { + log_ereport(LOG_FAILURE, "VirtualServer %s error: abort", vs->name.ptr); + return 1; + } + } + cxListFree(locations); // set the access log for the virtual server // TODO: don't always use the default