plugins/mod_http.lua
changeset 4702 5a85e541de1a
parent 4696 4700e318add1
child 4717 3c0321e3fa76
--- a/plugins/mod_http.lua	Thu Apr 26 06:30:29 2012 +0100
+++ b/plugins/mod_http.lua	Thu Apr 26 06:41:11 2012 +0100
@@ -29,6 +29,12 @@
 	return method:upper().." "..host..app_path..path;
 end
 
+local function get_base_path(host_module, app_name, default_app_path)
+	return host_module:get_option("http_paths", {})[app_name] -- Host
+		or module:get_option("http_paths", {})[app_name] -- Global
+		or default_app_path; -- Default
+end
+
 function module.add_host(module)
 	local host = module.host;
 	local apps = {};
@@ -36,7 +42,7 @@
 	local function http_app_added(event)
 		local app_name = event.item.name;
 		local default_app_path = event.item.default_path or "/"..app_name;
-		local app_path = normalize_path(module:get_option_string(app_name.."_http_path", default_app_path));
+		local app_path = normalize_path(get_base_path(module, app_name, default_app_path));
 		if not app_name then		
 			-- TODO: Link to docs
 			module:log("error", "HTTP app has no 'name', add one or use module:provides('http', app)");