diff --git a/ChangeLog b/ChangeLog index 52afd782d..c36f250ed 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,31 @@ +2008-04-26 Alvaro Lopez Ortega + + * admin/ModuleDirlist.py (ModuleDirlist._op_render), + admin/ModuleRedir.py (ModuleRedir._op_render): Updated to use the + new TableProps class instead of the plain old Table. + + * cherokee/virtual_server.c (configure_rule_match), qa/*.py, + cherokee.conf.sample.pre, cherokee/main_admin.c, cherokee/admin.c: + Configuration format has changed again. The new entries weren't + following the style of the rest of the configuration. The change + is really small; however it impacts almost all of the QA cases. + Now, rules are defined like: "rule!!match = " instead + of "rule!!match!type = ". + + * admin/ModuleHeader.py, admin/Makefile.am: Added support of + header rules. This is a new module. + + * admin/static/css/cherokee.css: This couple of minor changes make + the interface look much better. It basically improves the + PropertyTable look. + + * qa/PageEntry.py, qa/config.py, qa/ModuleDefault.py, + qa/ModuleRequest.py, qa/ModuleExtensions.py, qa/consts.py, + qa/PageVServer.py, qa/static/js/common.js, qa/RuleList.py, + qa/Form.py, qa/ModuleDirectory.py, qa/Makefile.am: Rule types are + no longer hardcoded. They are independed modules, as in the the + server. + 2008-04-25 Alvaro Lopez Ortega * cherokee/main_admin.c (main): There was a unneeded Win32 diff --git a/admin/Form.py b/admin/Form.py index 03ee54877..18a90e36e 100644 --- a/admin/Form.py +++ b/admin/Form.py @@ -181,10 +181,10 @@ def InstanceOptions (self, cfg_key, options, *args, **kwargs): FormHelper.options_wrap_num += 1 ops = '
%s
'%(auto_wrap_id, auto_wrap_id, ops) - return (ops, value) + return (ops, value, auto_wrap_id) def AddTableOptions (self, table, title, cfg_key, options, *args, **kwargs): - entry, value = self.InstanceOptions (cfg_key, options, *args, **kwargs) + entry, value, wrap = self.InstanceOptions (cfg_key, options, *args, **kwargs) label = self.Label(title, cfg_key) table += (label, entry) @@ -406,7 +406,7 @@ def AddPropCheck (self, table, title, cfg_key, default, comment=None): self.AddProp (table, title, cfg_key, entry, comment) def AddPropOptions (self, table, title, cfg_key, options, comment=None, **kwargs): - entry, v = self.InstanceOptions (cfg_key, options, **kwargs) + entry, v, w = self.InstanceOptions (cfg_key, options, **kwargs) self.AddProp (table, title, cfg_key, entry, comment) return v diff --git a/admin/Makefile.am b/admin/Makefile.am index 2b83a8143..0117e3ee1 100644 --- a/admin/Makefile.am +++ b/admin/Makefile.am @@ -60,6 +60,10 @@ ModuleHtpasswd.py \ ModuleMysql.py \ ModulePam.py \ ModuleRoundRobin.py \ +ModuleDefault.py \ +ModuleRequest.py \ +ModuleDirectory.py \ +ModuleExtensions.py \ config.py \ pyscgi.py \ validations.py \ diff --git a/admin/ModuleCommon.py b/admin/ModuleCommon.py index c86685def..ef2048ef9 100644 --- a/admin/ModuleCommon.py +++ b/admin/ModuleCommon.py @@ -4,6 +4,8 @@ from ModuleFile import * from ModuleDirlist import * +NOTE_PATHINFO = "Allow extra tailing paths" + class ModuleCommon (Module, FormHelper): PROPERTIES = ModuleFile.PROPERTIES + ModuleDirlist.PROPERTIES + [ 'allow_pathinfo' @@ -20,9 +22,11 @@ def _op_render (self): txt = '' # Local properties - table = Table(2) - self.AddTableCheckbox (table, 'Allow PathInfo', '%s!allow_pathinfo'%(self._prefix), False) - txt += str(table) + table = TableProps() + self.AddPropCheck (table, 'Allow PathInfo', '%s!allow_pathinfo'%(self._prefix), False, NOTE_PATHINFO) + + txt = '

Parsing

' + txt += self.Indent(table) # Copy errors to the modules, # they may need to print them diff --git a/admin/ModuleDefault.py b/admin/ModuleDefault.py new file mode 100644 index 000000000..58eca85a0 --- /dev/null +++ b/admin/ModuleDefault.py @@ -0,0 +1,22 @@ +from Form import * +from Table import * +from Module import * + +class ModuleDefault (Module, FormHelper): + validation = [] + + def __init__ (self, cfg, prefix, submit_url): + Module.__init__ (self, 'default', cfg, prefix, submit_url) + FormHelper.__init__ (self, 'default', cfg) + + def _op_render (self): + return "" + + def apply_cfg (self, values): + None + + def get_name (self): + return self._id.capitalize() + + def get_type_name (self): + return self._id.capitalize() diff --git a/admin/ModuleDirectory.py b/admin/ModuleDirectory.py new file mode 100644 index 000000000..54168a523 --- /dev/null +++ b/admin/ModuleDirectory.py @@ -0,0 +1,32 @@ +from Form import * +from Table import * +from Module import * +import validations + +NOTE_DIRECTORY = "Public Web Directory to which content the configuration will be applied." + +class ModuleDirectory (Module, FormHelper): + validation = [('tmp!new_rule!value', validations.is_dir_formated)] + + def __init__ (self, cfg, prefix, submit_url): + Module.__init__ (self, 'directory', cfg, prefix, submit_url) + FormHelper.__init__ (self, 'directory', cfg) + + def _op_render (self): + table = TableProps() + if self._prefix.startswith('tmp!'): + self.AddPropEntry (table, 'Web Directory', '%s!value'%(self._prefix), NOTE_DIRECTORY) + else: + self.AddPropEntry (table, 'Web Directory', '%s!directory'%(self._prefix), NOTE_DIRECTORY) + return str(table) + + def apply_cfg (self, values): + if values.has_key('value'): + dir_name = values['value'] + self._cfg['%s!match!directory'%(self._prefix)] = dir_name + + def get_name (self): + return self._cfg.get_val ('%s!match!directory'%(self._prefix)) + + def get_type_name (self): + return self._id.capitalize() diff --git a/admin/ModuleDirlist.py b/admin/ModuleDirlist.py index 32d6bcd2e..dbc1dad10 100644 --- a/admin/ModuleDirlist.py +++ b/admin/ModuleDirlist.py @@ -13,6 +13,10 @@ DEFAULT_THEME = "default" +NOTE_THEME = "Choose the listing theme." +NOTE_ICON_DIR = "Web directory where the icon files are located. Default: /icons." +NOTE_NOTICE_FILES = "List of notice files to be inserted." + class ModuleDirlist (Module, FormHelper): PROPERTIES = [ 'size', 'date', @@ -26,22 +30,22 @@ def __init__ (self, cfg, prefix, submit_url): FormHelper.__init__ (self, 'dirlist', cfg) def _op_render (self): - txt = '

Listing

' - table = Table(2) - self.AddTableCheckbox (table, "Show Size", "%s!size" %(self._prefix), True) - self.AddTableCheckbox (table, "Show Date", "%s!date" %(self._prefix), True) - self.AddTableCheckbox (table, "Show User", "%s!user" %(self._prefix), False) - self.AddTableCheckbox (table, "Show Group", "%s!group"%(self._prefix), False) - self.AddTableCheckbox (table, "Allow symbolic links", "%s!symlinks"%(self._prefix), True) - txt += str(table) - - txt += '

Theming

' - table = Table(2) + txt = '

Listing

' + table = TableProps() + self.AddPropCheck (table, "Show Size", "%s!size" %(self._prefix), True, '') + self.AddPropCheck (table, "Show Date", "%s!date" %(self._prefix), True, '') + self.AddPropCheck (table, "Show User", "%s!user" %(self._prefix), False, '') + self.AddPropCheck (table, "Show Group", "%s!group"%(self._prefix), False, '') + self.AddPropCheck (table, "Allow symbolic links", "%s!symlinks"%(self._prefix), True, '') + txt += self.Indent(table) + + txt += '

Theming

' + table = TableProps() themes = self._get_theme_list() - self.AddTableOptions (table, 'Theme', "%s!theme" % (self._prefix), themes) - self.AddTableEntry (table, 'Icons dir', "%s!icon_dir" % (self._prefix)) - self.AddTableEntry (table, 'Notice files', "%s!notice_files" % (self._prefix)) - txt += str(table) + self.AddPropOptions (table, 'Theme', "%s!theme" % (self._prefix), themes, NOTE_THEME) + self.AddPropEntry (table, 'Icons dir', "%s!icon_dir" % (self._prefix), NOTE_ICON_DIR) + self.AddPropEntry (table, 'Notice files', "%s!notice_files" % (self._prefix), NOTE_NOTICE_FILES) + txt += self.Indent(table) return txt diff --git a/admin/ModuleExtensions.py b/admin/ModuleExtensions.py new file mode 100644 index 000000000..457103537 --- /dev/null +++ b/admin/ModuleExtensions.py @@ -0,0 +1,37 @@ +from Form import * +from Table import * +from Module import * +import validations + +NOTE_EXTENSIONS = "File extension list to which content the configuration will be applied." + +class ModuleExtensions (Module, FormHelper): + validation = [('tmp!new_rule!value', validations.is_safe_id_list)] + + def __init__ (self, cfg, prefix, submit_url): + Module.__init__ (self, 'extensions', cfg, prefix, submit_url) + FormHelper.__init__ (self, 'extensions', cfg) + + def _op_render (self): + table = TableProps() + if self._prefix.startswith('tmp!'): + self.AddPropEntry (table, 'Extensions', '%s!value'%(self._prefix), NOTE_EXTENSIONS) + else: + self.AddPropEntry (table, 'Extensions', '%s!extensions'%(self._prefix), NOTE_EXTENSIONS) + return str(table) + + def _op_apply_changes (self, uri, post): + self.ApplyChangesPrefix (self._prefix, None, post) + + def apply_cfg (self, values): + if not values.has_key('value'): + print "ERROR, a 'value' entry is needed!" + + exts = values['value'] + self._cfg['%s!match!extensions'%(self._prefix)] = exts + + def get_name (self): + return self._cfg.get_val ('%s!match!extensions'%(self._prefix)) + + def get_type_name (self): + return self._id.capitalize() diff --git a/admin/ModuleFile.py b/admin/ModuleFile.py index 3c18a7cdd..761504cc6 100644 --- a/admin/ModuleFile.py +++ b/admin/ModuleFile.py @@ -14,9 +14,14 @@ def __init__ (self, cfg, prefix, submit_url): FormHelper.__init__ (self, 'file', cfg) def _op_render (self): + txt = '' + table = TableProps() self.AddPropCheck (table, "Use I/O cache", "%s!iocache" % (self._prefix), True, NOTE_IO_CACHE) - return str(table) + + txt += '

File Sending

' + txt += self.Indent(table) + return txt def _op_apply_changes (self, uri, post): self.ApplyChangesPrefix (self._prefix, ['iocache'], post) diff --git a/admin/ModuleHeader.py b/admin/ModuleHeader.py new file mode 100644 index 000000000..0be0385e1 --- /dev/null +++ b/admin/ModuleHeader.py @@ -0,0 +1,56 @@ +from Form import * +from Table import * +from Module import * +import validations + +NOTE_HEADER = "Header against which the regular expression will be evaluated." +NOTE_MATCH = "Regular expression." + +LENGHT_LIMIT = 10 + +HEADERS = [ + ('Accept-Encoding', 'Accept-Encoding'), + ('Accept-Charset', 'Accept-Charset'), + ('Accept-Language', 'Accept-Language'), + ('Referer', 'Referer'), + ('User-Agent', 'User-Agent') +] + +class ModuleHeader (Module, FormHelper): + validation = [('tmp!new_rule!value', validations.is_dir_formated)] + + def __init__ (self, cfg, prefix, submit_url): + Module.__init__ (self, 'header', cfg, prefix, submit_url) + FormHelper.__init__ (self, 'header', cfg) + + def _op_render (self): + table = TableProps() + if self._prefix.startswith('tmp!'): + self.AddPropOptions (table, 'Header', '%s!value'%(self._prefix), HEADERS, NOTE_HEADER) + else: + self.AddPropOptions (table, 'Header', '%s!header'%(self._prefix), HEADERS, NOTE_HEADER) + self.AddPropEntry (table, 'Regular Expression', '%s!match'%(self._prefix), NOTE_MATCH) + return str(table) + + def apply_cfg (self, values): + if values.has_key('value'): + header = values['value'] + self._cfg['%s!match!header'%(self._prefix)] = header + + if values.has_key('match'): + match = values['match'] + self._cfg['%s!match!match'%(self._prefix)] = match + + def get_name (self): + header = self._cfg.get_val ('%s!match!header'%(self._prefix)) + if not header: + return '' + + tmp = self._cfg.get_val ('%s!match!match'%(self._prefix), '') + if len(tmp) > LENGHT_LIMIT: + return "%s (%s..)" % (header, tmp[:5]) + + return "%s (%s)" % (header, tmp) + + def get_type_name (self): + return self._id.capitalize() diff --git a/admin/ModuleRedir.py b/admin/ModuleRedir.py index 3d4acfc8b..58e07c8fc 100644 --- a/admin/ModuleRedir.py +++ b/admin/ModuleRedir.py @@ -1,17 +1,11 @@ from Form import * from Table import * from Module import * - from consts import * - -NOTE_ON_PCRE = """ -

Regular expressions must be written using the -PCRE syntax. Here you can find information on the - regular expression -format.

-""" - +NOTE_SHOW = "Defined whether the redirection will be seen by the client." +NOTE_REGEX = "Regular expression. Check out the Reference." +NOTE_SUBSTITUTION = "Target address. It can use Regular Expression substitution sub-strings." class ModuleRedir (Module, FormHelper): PROPERTIES = [ @@ -35,7 +29,7 @@ def _op_render (self): for rule in cfg: cfg_key_rule = "%s!%s" % (cfg_key, rule) - show = self._get_show_option ('%s!show'%(cfg_key_rule)) + show, _,_ = self.InstanceOptions ('%s!show'%(cfg_key_rule), REDIR_SHOW) regex = self._cfg.get_val('%s!regex' %(cfg_key_rule)) substring = self._cfg.get_val('%s!substring'%(cfg_key_rule)) js = "post_del_key('/ajax/update', '%s');" % (cfg_key_rule) @@ -46,16 +40,12 @@ def _op_render (self): txt += self.Indent(table) # Add new rule - en_reg = self.InstanceEntry('rewrite_new_regex', 'text', size=28) - en_sub = self.InstanceEntry('rewrite_new_substring', 'text', size=28) - en_show = self._get_show_option ('rewrite_new_show') + table = TableProps() + self.AddPropOptions (table, 'Show', "rewrite_new_show", REDIR_SHOW, NOTE_SHOW) + self.AddPropEntry (table, 'Regular Expression', 'rewrite_new_regex', NOTE_REGEX) + self.AddPropEntry (table, 'Substitution', 'rewrite_new_substring', NOTE_SUBSTITUTION) - table = Table(3,1) - table += ('Type', 'Regular Expression', 'Substitution') - table += (en_show, en_reg, en_sub) - - txt += "

Add new rule

" - txt += self.Dialog(NOTE_ON_PCRE) + txt += "

Add new rule

" txt += self.Indent(table) return txt @@ -68,12 +58,6 @@ def __find_name (self): return str(i) i += 1 - def _get_show_option (self, cfg_key): - show_val = self._cfg.get_val(cfg_key) - if show_val: - return EntryOptions (cfg_key, REDIR_SHOW, selected=show_val) - return EntryOptions (cfg_key, REDIR_SHOW) - def _op_apply_changes (self, uri, post): regex = post.pop('rewrite_new_regex') substr = post.pop('rewrite_new_substring') diff --git a/admin/ModuleRequest.py b/admin/ModuleRequest.py new file mode 100644 index 000000000..781389bf0 --- /dev/null +++ b/admin/ModuleRequest.py @@ -0,0 +1,34 @@ +from Form import * +from Table import * +from Module import * +import validations + +NOTE_REQUEST = "Regular expression against which the request will be executed." + +class ModuleRequest (Module, FormHelper): + validation = [('tmp!new_rule!value', validations.is_regex)] + + def __init__ (self, cfg, prefix, submit_url): + Module.__init__ (self, 'request', cfg, prefix, submit_url) + FormHelper.__init__ (self, 'request', cfg) + + def _op_render (self): + table = TableProps() + self.AddPropEntry (table, 'Regular Expression', '%s!value'%(self._prefix), NOTE_REQUEST) + return str(table) + + def _op_apply_changes (self, uri, post): + self.ApplyChangesPrefix (self._prefix, None, post) + + def apply_cfg (self, values): + if not values.has_key('value'): + print "ERROR, a 'value' entry is needed!" + + exts = values['value'] + self._cfg['%s!match!request'%(self._prefix)] = exts + + def get_name (self): + return self._cfg.get_val ('%s!match!request'%(self._prefix)) + + def get_type_name (self): + return 'Regular Expression' diff --git a/admin/PageEntry.py b/admin/PageEntry.py index 55b54694c..3fe48b451 100644 --- a/admin/PageEntry.py +++ b/admin/PageEntry.py @@ -99,32 +99,36 @@ def _get_title (self, html=False): else: txt = '%s - ' % (self._host) - for n in range(len(ENTRY_TYPES)): - if ENTRY_TYPES[n][0] == self._entry.get_val('match!type'): - name = self._priorities.guess_name (self._prio) - txt += "%s: %s" % (ENTRY_TYPES[n][1], name) - return txt + # Load the rule plugin + _type = self._entry.get_val('match') + rule_module = module_obj_factory (_type, self._cfg, self._conf_prefix, self.submit_url) + + txt += "%s: %s" % (rule_module.get_type_name(), rule_module.get_name()) + return txt def _render_guts (self): - pre = self._conf_prefix - txt = '

%s

' % (self._get_title (html=True)) + pre = self._conf_prefix + tabs = [] + + # Rule Properties + tabs += [('Rule', self._render_rule())] + # Handler table = TableProps() e = self.AddPropOptions_Reload (table, 'Handler', '%s!handler'%(pre), HANDLERS, NOTE_HANDLER) self.AddPropEntry (table, 'Document Root', '%s!document_root'%(pre), NOTE_DOCUMENT_ROOT) - txt += '

General

' - txt += self.Indent(table) - if e: - txt += '

Handler properties

' - txt += self.Indent(e) + tabs += [('Handler', str(table) + e)] + else: + tabs += [('Handler', str(table))] - txt += '

Security

' - tmp = self._render_security () - txt += self.Indent(tmp) + # Security + tabs += [('Security', self._render_security())] + txt = '

%s

' % (self._get_title (html=True)) + txt += self.InstanceTab (tabs) form = Form (self.submit_url) return form.Render(txt) @@ -138,6 +142,14 @@ def _render_handler_properties (self): return "Couldn't load the properties module" return props._op_render() + def _render_rule (self): + pre = "%s!match"%(self._conf_prefix) + + # Change the rule type + table = TableProps() + e = self.AddPropOptions_Reload (table, "Rule Type", pre, RULES, "") + return str(table) + e + def _render_security (self): pre = self._conf_prefix diff --git a/admin/PageVServer.py b/admin/PageVServer.py index f7ff0b3e0..294a64dd5 100644 --- a/admin/PageVServer.py +++ b/admin/PageVServer.py @@ -39,6 +39,8 @@ NOTE_WRT_FILE = 'Full path to the file where the information will be saved.' NOTE_WRT_EXEC = 'Path to the executable that will be invoked on each log entry.' +NO_HANDLER = "No" +NO_VALIDATOR = "No" class PageVServer (PageMenu, FormHelper): def __init__ (self, cfg): @@ -64,23 +66,23 @@ def _op_handler (self, uri, post): return '/vserver/' default_render = False - if post.get_val('is_submit'): - if post.get_val('add_new_entry'): - # It's adding a new entry + if post.get_val('tmp!new_rule!value'): re = self._op_add_new_entry (post = post, cfg_prefix = 'vserver!%s!rule' %(host), - url_prefix = '/vserver/%s'%(host)) + url_prefix = '/vserver/%s'%(host), + key_prefix = 'tmp!new_rule') if not self.has_errors() and re: return re - elif post.get_val('userdir_add_new_entry'): - # It's adding a new user entry + + elif post.get_val('tmp!new_rule!user_dir!value'): re = self._op_add_new_entry (post = post, - cfg_prefix = 'vserver!%s!user_dir!rule'%(host), + cfg_prefix = 'vserver!%s!user_dir!rule' %(host), url_prefix = '/vserver/%s/userdir'%(host), - key_prefix = 'userdir_') + key_prefix = 'tmp!new_rule!user_dir') if not self.has_errors() and re: return re + else: # It's updating properties self._op_apply_changes (host, uri, post) @@ -104,50 +106,52 @@ def _op_handler (self, uri, post): if self._cfg.get_val('vserver!%s!user_dir'%(host)): tmp = self._cfg["vserver!%s!user_dir!rule"%(host)] if not tmp: - self._cfg["vserver!%s!user_dir!rule!1!match!type"%(host)] = "default" - self._cfg["vserver!%s!user_dir!rule!1!handler" %(host)] = "common" + self._cfg["vserver!%s!user_dir!rule!1!match" %(host)] = "default" + self._cfg["vserver!%s!user_dir!rule!1!handler" %(host)] = "common" self._priorities = RuleList(self._cfg, 'vserver!%s!rule'%(host)) self._priorities_userdir = RuleList(self._cfg, 'vserver!%s!user_dir!rule'%(host)) return self._op_render_vserver_details (host) - def _op_add_new_entry (self, post, cfg_prefix, url_prefix, key_prefix=''): - key_add_new_type = key_prefix + 'add_new_type' - key_add_new_entry = key_prefix + 'add_new_entry' - key_add_new_handler = key_prefix + 'add_new_handler' + def _op_add_new_entry (self, post, cfg_prefix, url_prefix, key_prefix): + # Build the configuration prefix + rules = RuleList(self._cfg, cfg_prefix) + priority = rules.get_highest_priority() + 100 + pre = '%s!%d' % (cfg_prefix, priority) + + # Read the properties + filtered_post = {} + for p in post: + if not p.startswith(key_prefix): + continue + + prop = p[len('%s!'%(key_prefix)):] + if not prop: continue + + filtered_post[prop] = post[p][0] + + # Look for the rule type + _type = post.get_val (key_prefix) # The 'add_new_entry' checking function depends on # the whether 'add_new_type' is a directory, an extension # or a regular extension - validation = DATA_VALIDATION[:] + rule_module = module_obj_factory (_type, self._cfg, pre, self.submit_url) - type_ = post.get_val(key_add_new_type) - if type_ == 'directory': - validation += [(key_add_new_entry, validations.is_dir_formated)] - elif type_ == 'extensions': - validation += [(key_add_new_entry, validations.is_safe_id_list)] - elif type_ == 'request': - validation += [(key_add_new_entry, validations.is_regex)] + # Validate + validation = DATA_VALIDATION[:] + validation += rule_module.validation - # Apply changes self._ValidateChanges (post, validation) if self.has_errors(): return + + # Apply the changes to the configuration tree + self._cfg['%s!match'%(pre)] = _type + rule_module.apply_cfg (filtered_post) - entry = post.pop(key_add_new_entry) - type_ = post.pop(key_add_new_type) - handler = post.pop(key_add_new_handler) - - # Look for the highest priority on the list - rules = RuleList(self._cfg, cfg_prefix) - priority = rules.get_highest_priority() + 100 - - pre = "%s!%d" % (cfg_prefix, priority) - self._cfg["%s!match!type"%(pre)] = type_ - self._cfg["%s!match!%s"%(pre, type_)] = entry - self._cfg["%s!handler"%(pre)] = handler - + # Get to the details page return "%s/prio/%d" % (url_prefix, priority) def _op_render_vserver_details (self, host): @@ -176,20 +180,22 @@ def _render_vserver_guts (self, host): tabs += [('Domain names', tmp)] # Behaviour - tmp = self._render_rules_generic (cfg_key = 'vserver!%s!rule' %(host), + pre = 'vserver!%s!rule' %(host) + tmp = self._render_rules_generic (cfg_key = pre, url_prefix = '/vserver/%s'%(host), priorities = self._priorities) - tmp += self._render_add_rule(host) + tmp += self._render_add_rule ("tmp!new_rule") tabs += [('Behaviour', tmp)] # Personal Webs tmp = self._render_personal_webs (host) if self._cfg.get_val('vserver!%s!user_dir'%(host)): tmp += "


" - tmp += self._render_rules_generic (cfg_key = 'vserver!%s!user_dir!rule'%(host), + pre = 'vserver!%s!user_dir!rule'%(host) + tmp += self._render_rules_generic (cfg_key = pre, url_prefix = '/vserver/%s/userdir'%(host), priorities = self._priorities_userdir) - tmp += self._render_add_rule (host, prefix="userdir_") + tmp += self._render_add_rule ("tmp!new_rule!user_dir") tabs += [('Personal Webs', tmp)] # Error handlers @@ -223,61 +229,72 @@ def _render_error_handler (self, host): txt += str(table) + self.Indent(e) return txt - - def _render_add_rule (self, host, prefix=''): - # Add new rule - txt = '' - entry = self.InstanceEntry (prefix+'add_new_entry', 'text', size=30) - type = EntryOptions (prefix+'add_new_type', ENTRY_TYPES, selected='directory') - handler = EntryOptions (prefix+'add_new_handler', HANDLERS, selected='common') - - table = Table(4,1) - table += ('Type', 'Entry', 'Handler') - table += (type, entry, handler) - - txt += "

Add new rule

" - txt += str(table) + + def _render_add_rule (self, prefix): + txt = "

Add new rule

" + table = TableProps() + e = self.AddPropOptions_Reload (table, "Rule Type", prefix, RULES, "") + txt += self.Indent (str(table) + e) return txt + def _get_handler_name (self, mod_name): + for h in HANDLERS: + if h[0] == mod_name: + return h[1] + def _render_rules_generic (self, cfg_key, url_prefix, priorities): txt = '' + + if not len(priorities): + return txt + txt += self.Dialog(RULE_LIST_NOTE) - if len(priorities): - table_name = "rules%d" % (self._rule_table) - self._rule_table += 1 + table_name = "rules%d" % (self._rule_table) + self._rule_table += 1 + + txt += '' % (table_name) + txt += '' + + # Rule list + for prio in priorities: + conf = priorities[prio] - txt += '

Rule list

' - txt += '
TargetTypeHandlerAuthFinal
' % (table_name) - txt += '' + _type = conf.get_val('match') + pre = '%s!%s' % (cfg_key, prio) - # Rule list - for prio in priorities: - conf = priorities[prio] - - type_ = conf.get_val('match!type') - name = priorities.guess_name (prio) - - pre = '%s!%s' % (cfg_key, prio) - if type_ != 'default': - link = '%s' % (url_prefix, prio, name) - final = self.InstanceCheckbox ('%s!match!final'%(pre), True) - js = "post_del_key('%s', '%s');" % (self.submit_ajax_url, pre) - link_del = self.InstanceImage ("bin.png", "Delete", border="0", onClick=js) - extra = '' - else: - link = 'Default' % (url_prefix, prio) - extra = ' NoDrag="1" NoDrop="1"' - final = '' - link_del = '' - - e1 = EntryOptions ('%s!handler' % (pre), HANDLERS, selected=conf['handler'].value) - - txt += '\n' % ( - prio, pre, prio, extra, link, type_.capitalize(), e1, final, link_del) - - txt += '
TargetTypeHandlerFinal
%s%s%s%s%s
\n' - txt += ''' - ''' % {'name': table_name, - 'url' : self.submit_ajax_url, - 'prefix': cfg_key} + ''' % {'name': table_name, + 'url' : self.submit_ajax_url, + 'prefix': cfg_key} return txt def _render_personal_webs (self, host): diff --git a/admin/PageVServers.py b/admin/PageVServers.py index 5ac8de759..48fd47efb 100644 --- a/admin/PageVServers.py +++ b/admin/PageVServers.py @@ -97,8 +97,8 @@ def _op_add_vserver (self, post): if name in self._cfg['vserver']: return '/vserver' - self._cfg['%s!document_root' % (pre)] = droot - self._cfg['%s!rule!1!match!type' % (pre)] = 'default' - self._cfg['%s!rule!1!handler' % (pre)] = 'common' + self._cfg['%s!document_root' % (pre)] = droot + self._cfg['%s!rule!1!match' % (pre)] = 'default' + self._cfg['%s!rule!1!handler' % (pre)] = 'common' return '/vserver/%s' % (name) diff --git a/admin/RuleList.py b/admin/RuleList.py index 94ea51c33..6b3003037 100644 --- a/admin/RuleList.py +++ b/admin/RuleList.py @@ -52,11 +52,11 @@ def __getitem__ (self, prio): def get_highest_priority(self): keys = self._cfg[self._cfg_pre].keys() - keys.sort (lambda x,y: int(x) < int(y)) - if keys: - return int(keys[-1]) - else: + if not keys: return 100 + tmp = [int(x) for x in keys] + tmp.sort() + return tmp[-1] def change_prios (self, changes): # Build the new child list @@ -79,22 +79,4 @@ def change_prios (self, changes): for item in relocated.keys(): pre = '%s!%d' % (self._cfg_pre, item) self._cfg.set_sub_node (pre, relocated[item]) - - def guess_name (self, prio): - conf = self[int(prio)] - type_ = conf.get_val('match!type') - - if type_ == 'directory': - name = conf.get_val('match!directory') - elif type_ == 'extensions': - name = conf.get_val('match!extensions') - elif type_ == 'request': - name = conf.get_val('match!request') - elif type_ == 'default': - name = '' - else: - print "UNKNOWN TYPE:", type_ - name = '' - - return name - + diff --git a/admin/config.py b/admin/config.py index 8bdf9f0b0..01fe7fef3 100644 --- a/admin/config.py +++ b/admin/config.py @@ -106,6 +106,9 @@ def serialize (self, path=''): content += '%s = %s\n' % (path, val) for name in self._child: + if name == 'tmp': + continue + node = self._child[name] if len(path) != 0: new_path = "%s!%s" % (path, name) diff --git a/admin/consts.py b/admin/consts.py index 9efdf2133..a04579bc1 100644 --- a/admin/consts.py +++ b/admin/consts.py @@ -1,9 +1,3 @@ -ENTRY_TYPES = [ - ('directory', 'Directory'), - ('extensions', 'Extensions'), - ('request', 'Regular Expression') -] - HANDLERS = [ ('common', 'List & Send'), ('file', 'Static content'), @@ -102,3 +96,10 @@ ('504', '504 Gatewat Timeout'), ('505', '505 HTTP Version Not Supported') ] + +RULES = [ + ('directory', 'Directory'), + ('extensions', 'Extensions'), + ('request', 'Regular Expression'), + ('header', 'Header') +] diff --git a/admin/static/css/cherokee.css b/admin/static/css/cherokee.css index 65c41d464..1c56cbbea 100644 --- a/admin/static/css/cherokee.css +++ b/admin/static/css/cherokee.css @@ -97,7 +97,7 @@ h2 { font-weight: normal; font-size: 120%; letter-spacing: -1px; - margin: 0.4em 0; + margin-top: 20px; } h3 { @@ -302,10 +302,10 @@ a.button:active span { } .tableprop_block hr { - background: #88A; + background: #DCF; border: none; - margin-top:10px; - margin-bottom:10px; + margin-top: 5px; + margin-bottom: 5px; height: 1px; width: 100%; text-align: left; diff --git a/admin/static/js/common.js b/admin/static/js/common.js index 71fc61e89..781ec174b 100644 --- a/admin/static/js/common.js +++ b/admin/static/js/common.js @@ -58,7 +58,6 @@ function comment_out_class (id, klass, visible) } - function options_active_prop (options_id, props_prefix) { var thisselect = get_by_id_and_class (options_id, 'select'); diff --git a/cherokee.conf.sample.pre b/cherokee.conf.sample.pre index 642940093..d30ca75a1 100644 --- a/cherokee.conf.sample.pre +++ b/cherokee.conf.sample.pre @@ -30,31 +30,31 @@ vserver!default!logger!access!buffsize = 16384 vserver!default!logger!error!type = file vserver!default!logger!error!filename = %localstatedir%/log/cherokee.error -vserver!default!rule!1!match!type = default +vserver!default!rule!1!match = default vserver!default!rule!1!handler = common vserver!default!rule!1!handler!iocache = 0 -vserver!default!rule!2!match!type = directory +vserver!default!rule!2!match = directory vserver!default!rule!2!match!directory = /icons vserver!default!rule!2!handler = file vserver!default!rule!2!document_root = %prefix%/share/cherokee/icons/ -vserver!default!rule!3!match!type = directory +vserver!default!rule!3!match = directory vserver!default!rule!3!match!directory = /cherokee_themes vserver!default!rule!3!document_root = %prefix%/share/cherokee/themes/ vserver!default!rule!3!handler = file -vserver!default!rule!4!match!type = directory +vserver!default!rule!4!match = directory vserver!default!rule!4!match!directory = /cgi-bin vserver!default!rule!4!document_root = %prefix%/lib/cgi-bin/ vserver!default!rule!4!handler = cgi -vserver!default!rule!5!match!type = directory +vserver!default!rule!5!match = directory vserver!default!rule!5!match!directory = /about vserver!default!rule!5!handler = server_info vserver!default!rule!5!handler!just_about = 1 -vserver!default!rule!99999!match!type = extensions +vserver!default!rule!99999!match = extensions vserver!default!rule!99999!match!extensions = php vserver!default!rule!99999!handler = fcgi vserver!default!rule!99999!handler!balancer = round_robin diff --git a/cherokee/main.c b/cherokee/main.c index aa9f525a1..a771f8dad 100644 --- a/cherokee/main.c +++ b/cherokee/main.c @@ -48,14 +48,14 @@ #define DEFAULT_CONFIG_FILE CHEROKEE_CONFDIR "/cherokee.conf" #define BASIC_CONFIG \ - "vserver!default!rule!1!match!type = default\n" \ + "vserver!default!rule!1!match = default\n" \ "vserver!default!rule!1!handler = common\n" \ "vserver!default!rule!1!handler!iocache = 0\n" \ - "vserver!default!rule!2!match!type = directory\n" \ + "vserver!default!rule!2!match = directory\n" \ "vserver!default!rule!2!match!directory = /icons\n" \ "vserver!default!rule!2!handler = file\n" \ "vserver!default!rule!2!document_root = " CHEROKEE_ICONSDIR "\n" \ - "vserver!default!rule!3!match!type = directory\n" \ + "vserver!default!rule!3!match = directory\n" \ "vserver!default!rule!3!match!directory = /cherokee_themes\n" \ "vserver!default!rule!3!handler = file\n" \ "vserver!default!rule!3!document_root = " CHEROKEE_THEMEDIR "\n" \ diff --git a/cherokee/main_admin.c b/cherokee/main_admin.c index 034b814fa..916859682 100644 --- a/cherokee/main_admin.c +++ b/cherokee/main_admin.c @@ -67,7 +67,7 @@ config_server (cherokee_server_t *srv) cherokee_buffer_add_va (&buf, "vserver!default!document_root = %s\n", document_root); cherokee_buffer_add_va (&buf, - RULE "1!match!type = default\n" + RULE "1!match = default\n" RULE "1!handler = scgi\n" RULE "1!handler!balancer = round_robin\n" RULE "1!handler!balancer!type = interpreter\n" @@ -75,23 +75,23 @@ config_server (cherokee_server_t *srv) RULE "1!handler!balancer!local1!interpreter = %s/server.py %s\n", document_root, config_file); cherokee_buffer_add_str (&buf, - RULE "2!match!type = directory\n" + RULE "2!match = directory\n" RULE "2!match!directory = /about\n" RULE "2!handler = server_info\n"); cherokee_buffer_add_str (&buf, - RULE "3!match!type = directory\n" + RULE "3!match = directory\n" RULE "3!match!directory = /static\n" RULE "3!handler = file\n" RULE "3!handler!iocache = 0\n"); cherokee_buffer_add_str (&buf, - RULE "4!match!type = request\n" + RULE "4!match = request\n" RULE "4!match!request = ^/favicon.ico$\n" RULE "4!handler = file\n"); cherokee_buffer_add_va (&buf, - RULE "5!match!type = directory\n" + RULE "5!match = directory\n" RULE "5!match!directory = /icons_local\n" RULE "5!handler = file\n" RULE "5!handler!iocache = 0\n" diff --git a/cherokee/virtual_server.c b/cherokee/virtual_server.c index 18b01e4e0..9eaab3407 100644 --- a/cherokee/virtual_server.c +++ b/cherokee/virtual_server.c @@ -533,12 +533,13 @@ configure_rule_match (cherokee_config_node_t *config, { ret_t ret; rule_func_new_t func_new; - cherokee_buffer_t *type = NULL; cherokee_plugin_info_t *info = NULL; + cherokee_buffer_t *type = &config->val; cherokee_server_t *srv = VSERVER_SRV(vserver); - - ret = cherokee_config_node_read (config, "type", &type); - if (ret != ret_ok) { + + /* Sanity check + */ + if (type == NULL) { PRINT_ERROR ("Rule match prio=%d must include a type property\n", priority); return ret; } @@ -693,7 +694,7 @@ configure_rules (cherokee_config_node_t *config, cherokee_rule_list_t *rule_list) { ret_t ret; - cherokee_list_t *i, *j; + cherokee_list_t *i; //, *j; cherokee_config_node_t *subconf; // cherokee_boolean_t did_default = false; diff --git a/qa/015-CGI-simple.py b/qa/015-CGI-simple.py index 77b0f6264..b7f583c16 100644 --- a/qa/015-CGI-simple.py +++ b/qa/015-CGI-simple.py @@ -2,7 +2,7 @@ MAGIC = "This is the magic string" CONF = """ -vserver!default!rule!150!match!type = directory +vserver!default!rule!150!match = directory vserver!default!rule!150!match!directory = /cgi-bin1 vserver!default!rule!150!handler = cgi """ diff --git a/qa/016-CGI-pathinfo.py b/qa/016-CGI-pathinfo.py index 60f79e367..f1eb83272 100644 --- a/qa/016-CGI-pathinfo.py +++ b/qa/016-CGI-pathinfo.py @@ -2,7 +2,7 @@ MAGIC = "It works" CONF = """ -vserver!default!rule!160!match!type = directory +vserver!default!rule!160!match = directory vserver!default!rule!160!match!directory = /cgi-bin2 vserver!default!rule!160!handler = cgi """ diff --git a/qa/017-CGI-pathinfo2.py b/qa/017-CGI-pathinfo2.py index 28977fb8c..8836c5375 100644 --- a/qa/017-CGI-pathinfo2.py +++ b/qa/017-CGI-pathinfo2.py @@ -3,7 +3,7 @@ MAGIC = "Cherokee rocks" CONF = """ -vserver!default!rule!170!match!type = directory +vserver!default!rule!170!match = directory vserver!default!rule!170!match!directory = /cgi-bin3 vserver!default!rule!170!handler = cgi """ diff --git a/qa/018-CGI-pathinfo3.py b/qa/018-CGI-pathinfo3.py index 52aab588a..4dbe265c3 100644 --- a/qa/018-CGI-pathinfo3.py +++ b/qa/018-CGI-pathinfo3.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!180!match!type = directory +vserver!default!rule!180!match = directory vserver!default!rule!180!match!directory = /cgi-bin4 vserver!default!rule!180!handler = cgi """ diff --git a/qa/020-VirtualHost.py b/qa/020-VirtualHost.py index f63f0a509..2b914a71a 100644 --- a/qa/020-VirtualHost.py +++ b/qa/020-VirtualHost.py @@ -5,7 +5,7 @@ CONF = """ vserver!cherokee.test!document_root = %s vserver!cherokee.test!domain!1 = cherokee.test -vserver!cherokee.test!rule!1!match!type = default +vserver!cherokee.test!rule!1!match = default vserver!cherokee.test!rule!1!handler = common """ diff --git a/qa/021-VirtualHost2.py b/qa/021-VirtualHost2.py index ba939e05d..509c2b28a 100644 --- a/qa/021-VirtualHost2.py +++ b/qa/021-VirtualHost2.py @@ -6,7 +6,7 @@ vserver!first.domain!document_root = %s vserver!first.domain!domain!1 = first.domain vserver!first.domain!domain!2 = second.domain -vserver!first.domain!rule!1!match!type = default +vserver!first.domain!rule!1!match = default vserver!first.domain!rule!1!handler = common """ diff --git a/qa/029-Post+Without-lenght.py b/qa/029-Post+Without-lenght.py index 54836591b..377f6ea33 100644 --- a/qa/029-Post+Without-lenght.py +++ b/qa/029-Post+Without-lenght.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!290!match!type = directory +vserver!default!rule!290!match = directory vserver!default!rule!290!match!directory = /post1 vserver!default!rule!290!handler = phpcgi vserver!default!rule!290!handler!interpreter = %s diff --git a/qa/030-Post+urlencoded.py b/qa/030-Post+urlencoded.py index 66fe78bde..79e00746f 100644 --- a/qa/030-Post+urlencoded.py +++ b/qa/030-Post+urlencoded.py @@ -2,7 +2,7 @@ from base import * CONF = """ -vserver!default!rule!300!match!type = directory +vserver!default!rule!300!match = directory vserver!default!rule!300!match!directory = /post2 vserver!default!rule!300!handler = cgi """ diff --git a/qa/031-Post+urlencoded2.py b/qa/031-Post+urlencoded2.py index 424f1d6f2..ec310abfd 100644 --- a/qa/031-Post+urlencoded2.py +++ b/qa/031-Post+urlencoded2.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!310!match!type = directory +vserver!default!rule!310!match = directory vserver!default!rule!310!match!directory = /post3 vserver!default!rule!310!handler = common """ diff --git a/qa/033-DirIndex.py b/qa/033-DirIndex.py index 251ced0f9..59bc552d6 100644 --- a/qa/033-DirIndex.py +++ b/qa/033-DirIndex.py @@ -3,7 +3,7 @@ MAGIC = "The_index_page_should_contain_this" CONF = """ -vserver!default!rule!330!match!type = directory +vserver!default!rule!330!match = directory vserver!default!rule!330!match!directory = /index1 vserver!default!rule!330!handler = dirlist """ diff --git a/qa/034-DirIndex2.py b/qa/034-DirIndex2.py index b03f83b98..070b08ee8 100644 --- a/qa/034-DirIndex2.py +++ b/qa/034-DirIndex2.py @@ -3,7 +3,7 @@ MAGIC = "The_index_page_should_contain_this" CONF = """ -vserver!default!rule!340!match!type = directory +vserver!default!rule!340!match = directory vserver!default!rule!340!match!directory = /index2 vserver!default!rule!340!handler = common """ diff --git a/qa/035-PHP-simple.py b/qa/035-PHP-simple.py index 4816e1c6c..bf6592176 100644 --- a/qa/035-PHP-simple.py +++ b/qa/035-PHP-simple.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!350!match!type = directory +vserver!default!rule!350!match = directory vserver!default!rule!350!match!directory = /php1 vserver!default!rule!350!handler = phpcgi vserver!default!rule!350!handler!interpreter = %s diff --git a/qa/036-DocumentRoot-common.py b/qa/036-DocumentRoot-common.py index ee5a37fcc..8e1bf0b65 100644 --- a/qa/036-DocumentRoot-common.py +++ b/qa/036-DocumentRoot-common.py @@ -3,7 +3,7 @@ MAGIC = "This_is_the_magic_key" CONF = """ -vserver!default!rule!360!match!type = directory +vserver!default!rule!360!match = directory vserver!default!rule!360!match!directory = /dr_common vserver!default!rule!360!handler = common vserver!default!rule!360!document_root = %s diff --git a/qa/039-Auth-Basic.py b/qa/039-Auth-Basic.py index f2197bfd6..00c27ceb9 100644 --- a/qa/039-Auth-Basic.py +++ b/qa/039-Auth-Basic.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!390!match!type = directory +vserver!default!rule!390!match = directory vserver!default!rule!390!match!directory = /auth1 vserver!default!rule!390!match!final = 0 vserver!default!rule!390!auth = plain diff --git a/qa/040-Auth-Basic2.py b/qa/040-Auth-Basic2.py index b671a946c..962d7faa2 100644 --- a/qa/040-Auth-Basic2.py +++ b/qa/040-Auth-Basic2.py @@ -5,7 +5,7 @@ PASSWD="open sesame" CONF = """ -vserver!default!rule!400!match!type = directory +vserver!default!rule!400!match = directory vserver!default!rule!400!match!directory = /auth2 vserver!default!rule!400!match!final = 0 vserver!default!rule!400!auth = plain diff --git a/qa/041-Auth-Basic3.py b/qa/041-Auth-Basic3.py index 184a132c7..e693f180b 100644 --- a/qa/041-Auth-Basic3.py +++ b/qa/041-Auth-Basic3.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!410!match!type = directory +vserver!default!rule!410!match = directory vserver!default!rule!410!match!directory = /auth3 vserver!default!rule!410!match!final = 0 vserver!default!rule!410!auth = plain diff --git a/qa/044-Home.py b/qa/044-Home.py index f34822d95..9a9475771 100644 --- a/qa/044-Home.py +++ b/qa/044-Home.py @@ -6,7 +6,7 @@ vserver!missing.host1!user_dir = public_html vserver!missing.host1!domain!1 = missing.host1 -vserver!missing.host1!user_dir!rule!1!match!type = default +vserver!missing.host1!user_dir!rule!1!match = default vserver!missing.host1!user_dir!rule!1!handler = common """ diff --git a/qa/045-Home2.py b/qa/045-Home2.py index 13cc2529d..bd8790dc9 100644 --- a/qa/045-Home2.py +++ b/qa/045-Home2.py @@ -10,7 +10,7 @@ vserver!testhost1!user_dir = %s vserver!testhost1!domain!1 = testhost1 -vserver!testhost1!user_dir!rule!1!match!type = default +vserver!testhost1!user_dir!rule!1!match = default vserver!testhost1!user_dir!rule!1!handler = common """ diff --git a/qa/046-Redir.py b/qa/046-Redir.py index 5deb66680..06fcaa659 100644 --- a/qa/046-Redir.py +++ b/qa/046-Redir.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!460!match!type = directory +vserver!default!rule!460!match = directory vserver!default!rule!460!match!directory = /redir46 vserver!default!rule!460!handler = redir vserver!default!rule!460!handler!url = http://www.cherokee-project.com diff --git a/qa/047-Redir2.py b/qa/047-Redir2.py index e7d8b0b6e..82e88abc0 100644 --- a/qa/047-Redir2.py +++ b/qa/047-Redir2.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!470!match!type = directory +vserver!default!rule!470!match = directory vserver!default!rule!470!match!directory = /redir47 vserver!default!rule!470!handler = redir vserver!default!rule!470!handler!url = http://www.cherokee-project.com diff --git a/qa/048-NN.py b/qa/048-NN.py index af2bf419d..c7bfdc9f1 100644 --- a/qa/048-NN.py +++ b/qa/048-NN.py @@ -4,7 +4,7 @@ CONTENT = "This is the content of " + MAGIC CONF = """ -vserver!default!rule!480!match!type = directory +vserver!default!rule!480!match = directory vserver!default!rule!480!match!directory = /nn1 vserver!default!rule!480!handler = nn """ diff --git a/qa/049-NN-broken.py b/qa/049-NN-broken.py index a27fe5375..f8035e4df 100644 --- a/qa/049-NN-broken.py +++ b/qa/049-NN-broken.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!490!match!type = directory +vserver!default!rule!490!match = directory vserver!default!rule!490!match!directory = /missing vserver!default!rule!490!handler = nn """ diff --git a/qa/050-HeadBody.py b/qa/050-HeadBody.py index 4b7cbd04f..921580040 100644 --- a/qa/050-HeadBody.py +++ b/qa/050-HeadBody.py @@ -3,7 +3,7 @@ MAGIC = "This shouldn't be sent" CONF = """ -vserver!default!rule!500!match!type = directory +vserver!default!rule!500!match = directory vserver!default!rule!500!match!directory = /head-body vserver!default!rule!500!handler = common """ diff --git a/qa/061-PAM.py b/qa/061-PAM.py index 6932b6354..59fdb1e4e 100644 --- a/qa/061-PAM.py +++ b/qa/061-PAM.py @@ -6,7 +6,7 @@ PASS="cherokeeqa" CONF = """ -vserver!default!rule!610!match!type = directory +vserver!default!rule!610!match = directory vserver!default!rule!610!match!directory = /privpam vserver!default!rule!610!match!final = 0 vserver!default!rule!610!auth = pam diff --git a/qa/062-PAM2.py b/qa/062-PAM2.py index ebaae664e..cb53f3dd0 100644 --- a/qa/062-PAM2.py +++ b/qa/062-PAM2.py @@ -6,7 +6,7 @@ PASS="invalid" CONF = """ -vserver!default!rule!620!match!type = directory +vserver!default!rule!620!match = directory vserver!default!rule!620!match!directory = /privpam2 vserver!default!rule!620!match!final = 0 vserver!default!rule!620!auth = pam diff --git a/qa/063-DocumentRoot.py b/qa/063-DocumentRoot.py index fbd7724b1..a3cd8ff87 100644 --- a/qa/063-DocumentRoot.py +++ b/qa/063-DocumentRoot.py @@ -3,7 +3,7 @@ MAGIC="This is the magic string for the DocumentRoot test - common" CONF = """ -vserver!default!rule!630!match!type = directory +vserver!default!rule!630!match = directory vserver!default!rule!630!match!directory = /droot vserver!default!rule!630!handler = common vserver!default!rule!630!document_root = %s diff --git a/qa/064-DirectoryIndex.py b/qa/064-DirectoryIndex.py index 80c4cebbe..5a4fff195 100644 --- a/qa/064-DirectoryIndex.py +++ b/qa/064-DirectoryIndex.py @@ -3,7 +3,7 @@ MAGIC = "This is the content of the HTML index file" CONF = """ -vserver!default!rule!640!match!type = directory +vserver!default!rule!640!match = directory vserver!default!rule!640!match!directory = /directoryindex1 vserver!default!rule!640!handler = common """ diff --git a/qa/066-DirectoryIndex3.py b/qa/066-DirectoryIndex3.py index e2ebcbb01..4368b2fac 100644 --- a/qa/066-DirectoryIndex3.py +++ b/qa/066-DirectoryIndex3.py @@ -5,7 +5,7 @@ vserver!directoryindex3!document_root = %s vserver!directoryindex3!domain!1 = directoryindex3 vserver!directoryindex3!directory_index = index.php,/super_test_index.php -vserver!directoryindex3!rule!1!match!type = default +vserver!directoryindex3!rule!1!match = default vserver!directoryindex3!rule!1!handler = common """ diff --git a/qa/067-PathInfo.py b/qa/067-PathInfo.py index 8f1230726..2c2ac88a2 100644 --- a/qa/067-PathInfo.py +++ b/qa/067-PathInfo.py @@ -13,7 +13,7 @@ # # cgi.fix_pathinfo=0 # -vserver!default!rule!670!match!type = directory +vserver!default!rule!670!match = directory vserver!default!rule!670!match!directory = /pathinfo vserver!default!rule!670!handler = common """ diff --git a/qa/068-PathInfo2.py b/qa/068-PathInfo2.py index c49b31855..c268f012a 100644 --- a/qa/068-PathInfo2.py +++ b/qa/068-PathInfo2.py @@ -3,7 +3,7 @@ PATH_INFO = "/param1/param2/param3" CONF = """ -vserver!default!rule!680!match!type = directory +vserver!default!rule!680!match = directory vserver!default!rule!680!match!directory = /pathinfo2 vserver!default!rule!680!handler = phpcgi vserver!default!rule!680!handler!interpreter = %s diff --git a/qa/069-PathInfo3.py b/qa/069-PathInfo3.py index 8d79b042a..512a25eab 100644 --- a/qa/069-PathInfo3.py +++ b/qa/069-PathInfo3.py @@ -3,7 +3,7 @@ PATH_INFO = "/param1/param2/param3" CONF = """ -vserver!default!rule!690!match!type = directory +vserver!default!rule!690!match = directory vserver!default!rule!690!match!directory = /pathinfo3 vserver!default!rule!690!handler = cgi """ diff --git a/qa/070-Inherit.py b/qa/070-Inherit.py index c2273caa8..d41b1a129 100644 --- a/qa/070-Inherit.py +++ b/qa/070-Inherit.py @@ -1,14 +1,14 @@ from base import * CONF = """ -vserver!default!rule!700!match!type = directory +vserver!default!rule!700!match = directory vserver!default!rule!700!match!directory = /inherit1 vserver!default!rule!700!auth = plain vserver!default!rule!700!auth!methods = basic vserver!default!rule!700!auth!realm = Test vserver!default!rule!700!auth!passwdfile = %s -vserver!default!rule!701!match!type = directory +vserver!default!rule!701!match = directory vserver!default!rule!701!match!directory = /inherit1/dir1/dir2/dir3 vserver!default!rule!701!match!final = 0 vserver!default!rule!701!handler = file diff --git a/qa/071-Inherit2.py b/qa/071-Inherit2.py index 14360dc37..ed14135d4 100644 --- a/qa/071-Inherit2.py +++ b/qa/071-Inherit2.py @@ -3,14 +3,14 @@ MAGIC = "It shouldn't inherit in this case" CONF = """ -vserver!default!rule!710!match!type = directory +vserver!default!rule!710!match = directory vserver!default!rule!710!match!directory = /inherit2/dir1/dir2/dir3 vserver!default!rule!710!auth = plain vserver!default!rule!710!auth!methods = basic vserver!default!rule!710!auth!realm = Test vserver!default!rule!710!auth!passwdfile = %s -vserver!default!rule!711!match!type = directory +vserver!default!rule!711!match = directory vserver!default!rule!711!match!directory = /inherit2 vserver!default!rule!711!match!final = 0 vserver!default!rule!711!handler = file diff --git a/qa/072-Inherit3.py b/qa/072-Inherit3.py index c65009360..06697ac3e 100644 --- a/qa/072-Inherit3.py +++ b/qa/072-Inherit3.py @@ -4,12 +4,12 @@ MAGIC = "This is th magic string" CONF = """ -vserver!default!rule!720!match!type = directory +vserver!default!rule!720!match = directory vserver!default!rule!720!match!directory = /inherit3/dir1/dir2/dir3 vserver!default!rule!720!handler = phpcgi vserver!default!rule!720!handler!interpreter = %s -vserver!default!rule!721!match!type = directory +vserver!default!rule!721!match = directory vserver!default!rule!721!match!directory = /inherit3 vserver!default!rule!721!handler = file """ diff --git a/qa/073-Access.py b/qa/073-Access.py index 6beb636f1..73d4472c3 100644 --- a/qa/073-Access.py +++ b/qa/073-Access.py @@ -3,7 +3,7 @@ MAGIC = "Allow From test" CONF = """ -vserver!default!rule!730!match!type = directory +vserver!default!rule!730!match = directory vserver!default!rule!730!match!directory = /allow1 vserver!default!rule!730!match!final = 0 vserver!default!rule!730!allow_from = 99.99.99.99 diff --git a/qa/074-Access2.py b/qa/074-Access2.py index 8e6d29d16..c4d6b08e6 100644 --- a/qa/074-Access2.py +++ b/qa/074-Access2.py @@ -3,7 +3,7 @@ MAGIC = "Allow From test 2" CONF = """ -vserver!default!rule!740!match!type = directory +vserver!default!rule!740!match = directory vserver!default!rule!740!match!directory = /allow2 vserver!default!rule!740!match!final = 0 vserver!default!rule!740!allow_from = 127.0.0.1,::1 diff --git a/qa/075-AccessRange.py b/qa/075-AccessRange.py index 934899f2c..0c1f67bd5 100644 --- a/qa/075-AccessRange.py +++ b/qa/075-AccessRange.py @@ -4,7 +4,7 @@ MAGIC = "Allow From range" CONF = """ -vserver!default!rule!750!match!type = directory +vserver!default!rule!750!match = directory vserver!default!rule!750!match!directory = /allow_range1 vserver!default!rule!750!match!final = 0 vserver!default!rule!750!allow_from = ::1/128,127.0.0.1/32 diff --git a/qa/076-AccessRange2.py b/qa/076-AccessRange2.py index 2f8c9e45c..dab0faba3 100644 --- a/qa/076-AccessRange2.py +++ b/qa/076-AccessRange2.py @@ -4,7 +4,7 @@ MAGIC = "Allow From range 2" CONF = """ -vserver!default!rule!760!match!type = directory +vserver!default!rule!760!match = directory vserver!default!rule!760!match!directory = /allow_range2 vserver!default!rule!760!match!final = 0 vserver!default!rule!760!allow_from = 127.0.0.1/8 diff --git a/qa/077-AccessRange3.py b/qa/077-AccessRange3.py index f21c17f96..779025618 100644 --- a/qa/077-AccessRange3.py +++ b/qa/077-AccessRange3.py @@ -4,7 +4,7 @@ MAGIC = "Allow From range invalid" CONF = """ -vserver!default!rule!770!match!type = directory +vserver!default!rule!770!match = directory vserver!default!rule!770!match!directory = /allow_range3 vserver!default!rule!770!match!final = 0 vserver!default!rule!770!allow_from = 123.123.0.0/16,0102::/16 diff --git a/qa/078-AccessAny.py b/qa/078-AccessAny.py index 271d4f726..447047a1f 100644 --- a/qa/078-AccessAny.py +++ b/qa/078-AccessAny.py @@ -4,7 +4,7 @@ MAGIC = "Allow From anywhere" CONF = """ -vserver!default!rule!780!match!type = directory +vserver!default!rule!780!match = directory vserver!default!rule!780!match!directory = /allow_range4 vserver!default!rule!780!match!final = 0 vserver!default!rule!780!allow_from = ::/0,0.0.0.0/0 diff --git a/qa/079-Extension.py b/qa/079-Extension.py index ac2641a98..04d060d0a 100644 --- a/qa/079-Extension.py +++ b/qa/079-Extension.py @@ -4,11 +4,11 @@ FORBIDDEN = "It shouldn't appear in the text" CONF = """ -vserver!default!rule!790!match!type = directory +vserver!default!rule!790!match = directory vserver!default!rule!790!match!directory = /extension1 vserver!default!rule!790!handler = file -vserver!default!rule!791!match!type = extensions +vserver!default!rule!791!match = extensions vserver!default!rule!791!match!extensions = xyz vserver!default!rule!791!handler = phpcgi vserver!default!rule!791!handler!interpreter = %s diff --git a/qa/080-Extension2.py b/qa/080-Extension2.py index 219f60091..4b45a999d 100644 --- a/qa/080-Extension2.py +++ b/qa/080-Extension2.py @@ -4,11 +4,11 @@ FORBIDDEN = "It shouldn't appear in the text" CONF = """ -vserver!default!rule!800!match!type = directory +vserver!default!rule!800!match = directory vserver!default!rule!800!match!directory = /extension2 vserver!default!rule!800!handler = file -vserver!default!rule!801!match!type = extensions +vserver!default!rule!801!match = extensions vserver!default!rule!801!match!extensions = abc,def,ghi vserver!default!rule!801!handler = phpcgi vserver!default!rule!801!handler!interpreter = %s diff --git a/qa/081-DocumentRoot-Common-index.py b/qa/081-DocumentRoot-Common-index.py index f1ac17d70..c89eb7f99 100644 --- a/qa/081-DocumentRoot-Common-index.py +++ b/qa/081-DocumentRoot-Common-index.py @@ -4,7 +4,7 @@ MAGIC2 = "Second part" CONF = """ -vserver!default!rule!810!match!type = directory +vserver!default!rule!810!match = directory vserver!default!rule!810!match!directory = /dr_common_index vserver!default!rule!810!handler = common vserver!default!rule!810!document_root = %s diff --git a/qa/082-Auth-header.py b/qa/082-Auth-header.py index fb95b60e0..ecdd77349 100644 --- a/qa/082-Auth-header.py +++ b/qa/082-Auth-header.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!820!match!type = directory +vserver!default!rule!820!match = directory vserver!default!rule!820!match!directory = /auth_header vserver!default!rule!820!match!final = 0 vserver!default!rule!820!auth = plain diff --git a/qa/083-RedirParam.py b/qa/083-RedirParam.py index 4da919c56..38fe5f362 100644 --- a/qa/083-RedirParam.py +++ b/qa/083-RedirParam.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!830!match!type = directory +vserver!default!rule!830!match = directory vserver!default!rule!830!match!directory = /redirparam vserver!default!rule!830!handler = redir vserver!default!rule!830!handler!rewrite!1!show = 0 diff --git a/qa/084-RedirParamShow.py b/qa/084-RedirParamShow.py index 919ac5fd3..fe9be5efd 100644 --- a/qa/084-RedirParamShow.py +++ b/qa/084-RedirParamShow.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!840!match!type = directory +vserver!default!rule!840!match = directory vserver!default!rule!840!match!directory = /redirparam2 vserver!default!rule!840!handler = redir vserver!default!rule!840!handler!rewrite!1!show = 1 diff --git a/qa/085-AuthUsers.py b/qa/085-AuthUsers.py index a1bac0820..fee0ab5af 100644 --- a/qa/085-AuthUsers.py +++ b/qa/085-AuthUsers.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!850!match!type = directory +vserver!default!rule!850!match = directory vserver!default!rule!850!match!directory = /auth1users vserver!default!rule!850!match!final = 0 vserver!default!rule!850!auth = plain diff --git a/qa/086-AuthUsers2.py b/qa/086-AuthUsers2.py index 1ae47b3b0..1b403a946 100644 --- a/qa/086-AuthUsers2.py +++ b/qa/086-AuthUsers2.py @@ -1,7 +1,7 @@ from base import * CONF = """ -vserver!default!rule!860!match!type = directory +vserver!default!rule!860!match = directory vserver!default!rule!860!match!directory = /auth2users vserver!default!rule!860!match!final = 0 vserver!default!rule!860!auth = plain diff --git a/qa/088-CGI-envs.py b/qa/088-CGI-envs.py index 2f00acdef..72fbab054 100644 --- a/qa/088-CGI-envs.py +++ b/qa/088-CGI-envs.py @@ -7,7 +7,7 @@ ENV2_VALUE = "This is the second one" CONF = """ -vserver!default!rule!880!match!type = directory +vserver!default!rule!880!match = directory vserver!default!rule!880!match!directory = /cgienvs vserver!default!rule!880!handler = cgi vserver!default!rule!880!handler!env!%s = %s diff --git a/qa/089-gzip-encoding.py b/qa/089-gzip-encoding.py index 90dd57536..1f4527f18 100644 --- a/qa/089-gzip-encoding.py +++ b/qa/089-gzip-encoding.py @@ -8,7 +8,7 @@ MAGIC = "Random text follows: " + str_random (10 * 1024) CONF = """ -vserver!default!rule!890!match!type = directory +vserver!default!rule!890!match = directory vserver!default!rule!890!match!directory = /gzip1 vserver!default!rule!890!handler = file """ diff --git a/qa/090-Digest.py b/qa/090-Digest.py index 32828dc50..b7691ceeb 100644 --- a/qa/090-Digest.py +++ b/qa/090-Digest.py @@ -3,7 +3,7 @@ MAGIC = "Don't show this" CONF = """ -vserver!default!rule!900!match!type = directory +vserver!default!rule!900!match = directory vserver!default!rule!900!match!directory = /digest1 vserver!default!rule!900!match!final = 0 vserver!default!rule!900!auth = plain diff --git a/qa/091-Digest2.py b/qa/091-Digest2.py index 40e977e1d..d5733c4d7 100644 --- a/qa/091-Digest2.py +++ b/qa/091-Digest2.py @@ -7,7 +7,7 @@ PASSWD = "itissecret" CONF = """ -vserver!default!rule!910!match!type = directory +vserver!default!rule!910!match = directory vserver!default!rule!910!match!directory = /digest2 vserver!default!rule!910!match!final = 0 vserver!default!rule!910!auth = plain diff --git a/qa/092-Digest3.py b/qa/092-Digest3.py index 3eae16852..2724d4e45 100644 --- a/qa/092-Digest3.py +++ b/qa/092-Digest3.py @@ -8,7 +8,7 @@ PASSWD2 = "Itissecret" CONF = """ -vserver!default!rule!920!match!type = directory +vserver!default!rule!920!match = directory vserver!default!rule!920!match!directory = /digest3 vserver!default!rule!920!match!final = 0 vserver!default!rule!920!auth = plain diff --git a/qa/093-InvalidLinks.py b/qa/093-InvalidLinks.py index 4e339fd1c..235770dcc 100644 --- a/qa/093-InvalidLinks.py +++ b/qa/093-InvalidLinks.py @@ -7,7 +7,7 @@ BLINKS = {"broken2": "del1", "broken1": "del2"} CONF = """ -vserver!default!rule!930!match!type = directory +vserver!default!rule!930!match = directory vserver!default!rule!930!match!directory = /brokenlinks1 vserver!default!rule!930!handler = dirlist """ diff --git a/qa/094-URL-request.py b/qa/094-URL-request.py index f0ff6c803..c2cc6a26a 100644 --- a/qa/094-URL-request.py +++ b/qa/094-URL-request.py @@ -6,9 +6,9 @@ vserver!request1host!document_root = %s vserver!request1host!domain!1 = request1host -vserver!request1host!rule!1!match!type = default +vserver!request1host!rule!1!match = default vserver!request1host!rule!1!handler = server_info -vserver!request1host!rule!10!match!type = directory +vserver!request1host!rule!10!match = directory vserver!request1host!rule!10!match!directory = /urlrequest1 vserver!request1host!rule!10!handler = file """ diff --git a/qa/095-htpasswd-apache-md5.py b/qa/095-htpasswd-apache-md5.py index 5343480f3..ccad8d076 100644 --- a/qa/095-htpasswd-apache-md5.py +++ b/qa/095-htpasswd-apache-md5.py @@ -10,7 +10,7 @@ PASSWD_APACHE = "$apr1$VVusx/..$B6P.9/IK81S3M1QNVdfdX0" CONF = """ -vserver!default!rule!950!match!type = directory +vserver!default!rule!950!match = directory vserver!default!rule!950!match!directory = /apachemd5_1 vserver!default!rule!950!match!final = 0 vserver!default!rule!950!auth = htpasswd diff --git a/qa/096-htpasswd-md5.py b/qa/096-htpasswd-md5.py index 61f2eae5b..e9a687f88 100644 --- a/qa/096-htpasswd-md5.py +++ b/qa/096-htpasswd-md5.py @@ -10,7 +10,7 @@ PASSWD_MD5 = "$1$JJ3RnzaO$zpsGlLvKvMVrUW4ZNZ7Iw1" CONF = """ -vserver!default!rule!960!match!type = directory +vserver!default!rule!960!match = directory vserver!default!rule!960!match!directory = /htpasswd_md5 vserver!default!rule!960!match!final = 0 vserver!default!rule!960!auth = htpasswd diff --git a/qa/097-htpasswd-sha1.py b/qa/097-htpasswd-sha1.py index 285f698a2..9d508d738 100644 --- a/qa/097-htpasswd-sha1.py +++ b/qa/097-htpasswd-sha1.py @@ -10,7 +10,7 @@ PASSWD_SHA1 = "{SHA}yQ4y0eYX/0yw69R4ne1+0QmBpec=" CONF = """ -vserver!default!rule!970!match!type = directory +vserver!default!rule!970!match = directory vserver!default!rule!970!match!directory = /htpasswd_sha1 vserver!default!rule!970!match!final = 0 vserver!default!rule!970!auth = htpasswd diff --git a/qa/098-htpasswd-crypt.py b/qa/098-htpasswd-crypt.py index e026383b3..ac50dd7b1 100644 --- a/qa/098-htpasswd-crypt.py +++ b/qa/098-htpasswd-crypt.py @@ -10,7 +10,7 @@ PASSWD_CRYPT = "kA7oFNEzu4SrI" CONF = """ -vserver!default!rule!980!match!type = directory +vserver!default!rule!980!match = directory vserver!default!rule!980!match!directory = /htpasswd_crypt vserver!default!rule!980!match!final = 0 vserver!default!rule!980!auth = htpasswd diff --git a/qa/099-htpasswd-plain.py b/qa/099-htpasswd-plain.py index a13545ef2..dc41fa926 100644 --- a/qa/099-htpasswd-plain.py +++ b/qa/099-htpasswd-plain.py @@ -9,7 +9,7 @@ PASSWD = "alo" CONF = """ -vserver!default!rule!990!match!type = directory +vserver!default!rule!990!match = directory vserver!default!rule!990!match!directory = /htpasswd_plain vserver!default!rule!990!match!final = 0 vserver!default!rule!990!auth = htpasswd diff --git a/qa/100-Digest-htdigest.py b/qa/100-Digest-htdigest.py index 910654f18..7facb7d51 100644 --- a/qa/100-Digest-htdigest.py +++ b/qa/100-Digest-htdigest.py @@ -8,7 +8,7 @@ DIR = "digest_htdigest1" CONF = """ -vserver!default!rule!1000!match!type = directory +vserver!default!rule!1000!match = directory vserver!default!rule!1000!match!directory = %s vserver!default!rule!1000!match!final = 0 vserver!default!rule!1000!auth = htdigest diff --git a/qa/102-QueryString.py b/qa/102-QueryString.py index 2ee8ba9b4..095b2c7e6 100644 --- a/qa/102-QueryString.py +++ b/qa/102-QueryString.py @@ -3,7 +3,7 @@ PARAMS = "param1=one¶m2=two¶m3" CONF = """ -vserver!default!rule!1020!match!type = directory +vserver!default!rule!1020!match = directory vserver!default!rule!1020!match!directory = /querystring vserver!default!rule!1020!handler = cgi """ diff --git a/qa/103-ScriptName.py b/qa/103-ScriptName.py index 13722db82..1eef3f5bb 100644 --- a/qa/103-ScriptName.py +++ b/qa/103-ScriptName.py @@ -5,7 +5,7 @@ SCRIPT_NAME = VIRTUAL_DIR + "/exec.cgi" CONF = """ -vserver!default!rule!1030!match!type = directory +vserver!default!rule!1030!match = directory vserver!default!rule!1030!match!directory = %s vserver!default!rule!1030!handler = cgi vserver!default!rule!1030!document_root = %s diff --git a/qa/104-ScriptAlias_PathInfo.py b/qa/104-ScriptAlias_PathInfo.py index 6ee9c1297..bca9658d6 100644 --- a/qa/104-ScriptAlias_PathInfo.py +++ b/qa/104-ScriptAlias_PathInfo.py @@ -4,7 +4,7 @@ PATH_INFO = "/this_is_the/path_info" CONF = """ -vserver!default!rule!1040!match!type = directory +vserver!default!rule!1040!match = directory vserver!default!rule!1040!match!directory = /alias_and_pathinfo vserver!default!rule!1040!handler = cgi vserver!default!rule!1040!handler!script_alias = %s diff --git a/qa/105-If-Range.py b/qa/105-If-Range.py index d0297ba31..83b81f4bf 100644 --- a/qa/105-If-Range.py +++ b/qa/105-If-Range.py @@ -36,7 +36,7 @@ """ CONF = """ -vserver!default!rule!1050!match!type = directory +vserver!default!rule!1050!match = directory vserver!default!rule!1050!match!directory = /if_range1 vserver!default!rule!1050!handler = file """ diff --git a/qa/106-If-Range2.py b/qa/106-If-Range2.py index bfd2d8c55..dfcc655e0 100644 --- a/qa/106-If-Range2.py +++ b/qa/106-If-Range2.py @@ -14,7 +14,7 @@ """ CONF = """ -vserver!default!rule!1060!match!type = directory +vserver!default!rule!1060!match = directory vserver!default!rule!1060!match!directory = /if_range2 vserver!default!rule!1060!handler = file """ diff --git a/qa/107-Priority1.py b/qa/107-Priority1.py index a7949d054..a3553618d 100644 --- a/qa/107-Priority1.py +++ b/qa/107-Priority1.py @@ -4,11 +4,11 @@ TEXT = "It should be printed by the CGI" CONF = """ -vserver!default!rule!1070!match!type = directory +vserver!default!rule!1070!match = directory vserver!default!rule!1070!match!directory = /prio1 vserver!default!rule!1070!handler = file -vserver!default!rule!1071!match!type = directory +vserver!default!rule!1071!match = directory vserver!default!rule!1071!match!directory = /prio1/sub vserver!default!rule!1071!handler = cgi """ diff --git a/qa/108-Priority2.py b/qa/108-Priority2.py index ce41dbb1f..07fb12853 100644 --- a/qa/108-Priority2.py +++ b/qa/108-Priority2.py @@ -4,11 +4,11 @@ TEXT = "It should be printed by the CGI" CONF = """ -vserver!default!rule!1080!match!type = directory +vserver!default!rule!1080!match = directory vserver!default!rule!1080!match!directory = /prio2/sub vserver!default!rule!1080!handler = file -vserver!default!rule!1081!match!type = extensions +vserver!default!rule!1081!match = extensions vserver!default!rule!1081!match!extensions = prio2 vserver!default!rule!1081!handler = cgi """ diff --git a/qa/109-Priority3.py b/qa/109-Priority3.py index faf292f90..13a129c3b 100644 --- a/qa/109-Priority3.py +++ b/qa/109-Priority3.py @@ -4,11 +4,11 @@ TEXT = "It should be printed by the CGI" CONF = """ -vserver!default!rule!1090!match!type = extensions +vserver!default!rule!1090!match = extensions vserver!default!rule!1090!match!extensions = prio3 vserver!default!rule!1090!handler = file -vserver!default!rule!1091!match!type = directory +vserver!default!rule!1091!match = directory vserver!default!rule!1091!match!directory = /prio3/sub vserver!default!rule!1091!handler = cgi """ diff --git a/qa/110-Priority4.py b/qa/110-Priority4.py index 17f789723..d1ba67222 100644 --- a/qa/110-Priority4.py +++ b/qa/110-Priority4.py @@ -4,11 +4,11 @@ TEXT = "It should be printed by the CGI" CONF = """ -vserver!default!rule!1100!match!type = directory +vserver!default!rule!1100!match = directory vserver!default!rule!1100!match!directory = /request_entry1 vserver!default!rule!1100!handler = file -vserver!default!rule!1101!match!type = request +vserver!default!rule!1101!match = request vserver!default!rule!1101!match!request = request_entry1.*cgi$ vserver!default!rule!1101!handler = cgi """ diff --git a/qa/112-NiceError-CGI.py b/qa/112-NiceError-CGI.py index f68a39f9f..3154dcbe5 100644 --- a/qa/112-NiceError-CGI.py +++ b/qa/112-NiceError-CGI.py @@ -34,7 +34,7 @@ """ CONF = """ -vserver!default!rule!1120!match!type = directory +vserver!default!rule!1120!match = directory vserver!default!rule!1120!match!directory = /cgi_error_403_1 vserver!default!rule!1120!handler = cgi vserver!default!rule!1120!handler!error_handler = 1 diff --git a/qa/113-HeaderFile.py b/qa/113-HeaderFile.py index db37206a0..1b5cf263f 100644 --- a/qa/113-HeaderFile.py +++ b/qa/113-HeaderFile.py @@ -6,7 +6,7 @@ HEADER_CONTENT = "This is the header file of the directory" CONF = """ -vserver!default!rule!1130!match!type = directory +vserver!default!rule!1130!match = directory vserver!default!rule!1130!match!directory = /header_file1 vserver!default!rule!1130!handler = common vserver!default!rule!1130!handler!notice_files = header diff --git a/qa/114-HeaderFile2.py b/qa/114-HeaderFile2.py index 259672cc4..2b79d832a 100644 --- a/qa/114-HeaderFile2.py +++ b/qa/114-HeaderFile2.py @@ -7,7 +7,7 @@ """ CONF = """ -vserver!default!rule!1140!match!type = directory +vserver!default!rule!1140!match = directory vserver!default!rule!1140!match!directory = /header_file2 vserver!default!rule!1140!handler = dirlist vserver!default!rule!1140!handler!notice_files = noexits1.txt,header.txt,noexits2.txt diff --git a/qa/115-Respin.py b/qa/115-Respin.py index fef1e3c53..39a5c26cc 100644 --- a/qa/115-Respin.py +++ b/qa/115-Respin.py @@ -3,16 +3,16 @@ MAGIC = "Cherokee_is_pure_magic" CONF = """ -vserver!default!rule!1150!match!type = directory +vserver!default!rule!1150!match = directory vserver!default!rule!1150!match!directory = /respin1 vserver!default!rule!1150!handler = common -vserver!default!rule!1151!match!type = directory +vserver!default!rule!1151!match = directory vserver!default!rule!1151!match!directory = /respin1-cgi vserver!default!rule!1151!handler = phpcgi vserver!default!rule!1151!handler!interpreter = %s -vserver!default!rule!1152!match!type = request +vserver!default!rule!1152!match = request vserver!default!rule!1152!match!request = /respin1/.+/ vserver!default!rule!1152!handler = redir vserver!default!rule!1152!handler!rewrite!1!show = 0 diff --git a/qa/116-RequestTiny.py b/qa/116-RequestTiny.py index cfa733d23..c83fb4666 100644 --- a/qa/116-RequestTiny.py +++ b/qa/116-RequestTiny.py @@ -7,10 +7,10 @@ vserver!!document_root = %s vserver!!domain!1 = -vserver!!rule!10!match!type = default +vserver!!rule!10!match = default vserver!!rule!10!handler = file -vserver!!rule!11!match!type = request +vserver!!rule!11!match = request vserver!!rule!11!match!request = ^/$ vserver!!rule!11!handler = redir vserver!!rule!11!handler!rewrite!1!show = 0 diff --git a/qa/117-DomainToDir.py b/qa/117-DomainToDir.py index cef1b81a5..e5fae0a37 100644 --- a/qa/117-DomainToDir.py +++ b/qa/117-DomainToDir.py @@ -8,7 +8,7 @@ vserver!!document_root = %s vserver!!domain!1 = -vserver!!rule!10!match!type = default +vserver!!rule!10!match = default vserver!!rule!10!handler = redir vserver!!rule!10!handler!rewrite!1!show = 1 vserver!!rule!10!handler!rewrite!1!regex = ^/(.*)$ diff --git a/qa/118-Request-redir.py b/qa/118-Request-redir.py index 555015098..4d5b30d6e 100644 --- a/qa/118-Request-redir.py +++ b/qa/118-Request-redir.py @@ -4,7 +4,7 @@ URL = "http://www.example.com" CONF = """ -vserver!default!rule!1180!match!type = request +vserver!default!rule!1180!match = request vserver!default!rule!1180!match!request = ^/req_redir_compact1/(.*)/ vserver!default!rule!1180!handler = redir vserver!default!rule!1180!handler!rewrite!1!show = 1 diff --git a/qa/121-NoUserDir.py b/qa/121-NoUserDir.py index b76b26b19..743987e2c 100644 --- a/qa/121-NoUserDir.py +++ b/qa/121-NoUserDir.py @@ -9,7 +9,7 @@ vserver!!document_root = %s vserver!!domain!1 = -vserver!!rule!10!match!type = default +vserver!!rule!10!match = default vserver!!rule!10!handler = common """ diff --git a/qa/122-Methods.py b/qa/122-Methods.py index 782bcf51f..103463aa0 100644 --- a/qa/122-Methods.py +++ b/qa/122-Methods.py @@ -7,7 +7,7 @@ def __init__ (self): self.expected_error = 405 CONF = """ -vserver!default!rule!1220!match!type = directory +vserver!default!rule!1220!match = directory vserver!default!rule!1220!match!directory = /methods_group vserver!default!rule!1220!handler = file """ diff --git a/qa/123-ImplicitRedit.py b/qa/123-ImplicitRedit.py index 6006bd3a0..1778b8406 100644 --- a/qa/123-ImplicitRedit.py +++ b/qa/123-ImplicitRedit.py @@ -3,7 +3,7 @@ TEST_FILE = "Cherokee is the fastest one" CONF = """ -vserver!default!rule!1230!match!type = directory +vserver!default!rule!1230!match = directory vserver!default!rule!1230!match!directory = /implicit_redir1 vserver!default!rule!1230!handler = dirlist vserver!default!rule!1230!document_root = %s diff --git a/qa/124-DomainToDir2.py b/qa/124-DomainToDir2.py index d427a3cff..5813f1228 100644 --- a/qa/124-DomainToDir2.py +++ b/qa/124-DomainToDir2.py @@ -9,10 +9,10 @@ vserver!!document_root = %s vserver!!domain!1 = -vserver!!rule!1!match!type = default +vserver!!rule!1!match = default vserver!!rule!1!handler = server_info -vserver!!rule!10!match!type = directory +vserver!!rule!10!match = directory vserver!!rule!10!match!directory = vserver!!rule!10!handler = redir vserver!!rule!10!handler!rewrite!1!show = 1 diff --git a/qa/125-domain-redir1.py b/qa/125-domain-redir1.py index c033974d3..bc031e99d 100644 --- a/qa/125-domain-redir1.py +++ b/qa/125-domain-redir1.py @@ -7,7 +7,7 @@ vserver!!document_root = /faked vserver!!domain!1 = -vserver!!rule!10!match!type = default +vserver!!rule!10!match = default vserver!!rule!10!handler = redir vserver!!rule!10!handler!rewrite!1!show = 1 vserver!!rule!10!handler!rewrite!1!regex = ^/(.*)$ @@ -16,7 +16,7 @@ vserver!www.!document_root = %s vserver!www.!domain!1 = www. -vserver!www.!rule!10!match!type = default +vserver!www.!rule!10!match = default vserver!www.!rule!10!handler = file """ diff --git a/qa/126-SCGI.py b/qa/126-SCGI.py index f0cc5221e..820023c0a 100644 --- a/qa/126-SCGI.py +++ b/qa/126-SCGI.py @@ -17,7 +17,7 @@ def handle_request (self): """ % (MAGIC, PORT) CONF = """ -vserver!default!rule!1260!match!type = directory +vserver!default!rule!1260!match = directory vserver!default!rule!1260!match!directory = vserver!default!rule!1260!handler = scgi vserver!default!rule!1260!handler!balancer = round_robin diff --git a/qa/127-SCGI-Post.py b/qa/127-SCGI-Post.py index 9d51cf251..2b6759626 100644 --- a/qa/127-SCGI-Post.py +++ b/qa/127-SCGI-Post.py @@ -18,7 +18,7 @@ def handle_request (self): """ % (PORT) CONF = """ -vserver!default!rule!1270!match!type = directory +vserver!default!rule!1270!match = directory vserver!default!rule!1270!match!directory = vserver!default!rule!1270!handler = scgi vserver!default!rule!1270!handler!balancer = round_robin diff --git a/qa/128-ValidMethod-common.py b/qa/128-ValidMethod-common.py index 23cd604ba..726408d2e 100644 --- a/qa/128-ValidMethod-common.py +++ b/qa/128-ValidMethod-common.py @@ -4,7 +4,7 @@ MAGIC = "Report bugs to http://bugs.cherokee-project.com" CONF = """ -vserver!default!rule!1280!match!type = directory +vserver!default!rule!1280!match = directory vserver!default!rule!1280!match!directory = /%s vserver!default!rule!1280!handler = common """ diff --git a/qa/129-Basic-EmptyPasswd.py b/qa/129-Basic-EmptyPasswd.py index 9519e0add..a4d9b2640 100644 --- a/qa/129-Basic-EmptyPasswd.py +++ b/qa/129-Basic-EmptyPasswd.py @@ -5,7 +5,7 @@ PASSWD="open sesame" CONF = """ -vserver!default!rule!1290!match!type = directory +vserver!default!rule!1290!match = directory vserver!default!rule!1290!match!directory = /auth_empty vserver!default!rule!1290!match!final = 0 vserver!default!rule!1290!auth = plain diff --git a/qa/130-Digest-EmptyPasswd.py b/qa/130-Digest-EmptyPasswd.py index 2e0c90f6e..ff3ee090a 100644 --- a/qa/130-Digest-EmptyPasswd.py +++ b/qa/130-Digest-EmptyPasswd.py @@ -7,7 +7,7 @@ PASSWD = "" CONF = """ -vserver!default!rule!1300!match!type = directory +vserver!default!rule!1300!match = directory vserver!default!rule!1300!match!directory = /digest_empty vserver!default!rule!1300!match!final = 0 vserver!default!rule!1300!auth = plain diff --git a/qa/131-ChangeUser-phpcgi.py b/qa/131-ChangeUser-phpcgi.py index 43aadb874..61bc6bebf 100644 --- a/qa/131-ChangeUser-phpcgi.py +++ b/qa/131-ChangeUser-phpcgi.py @@ -6,7 +6,7 @@ UID = pwd.getpwnam(USER)[2] CONF = """ -vserver!default!rule!1310!match!type = directory +vserver!default!rule!1310!match = directory vserver!default!rule!1310!match!directory = /change_user1 vserver!default!rule!1310!handler = phpcgi vserver!default!rule!1310!handler!change_user = 1 diff --git a/qa/135-RedirParams.py b/qa/135-RedirParams.py index 780992f35..92328f131 100644 --- a/qa/135-RedirParams.py +++ b/qa/135-RedirParams.py @@ -8,16 +8,16 @@ vserver!!document_root = %s vserver!!domain!1 = -vserver!!rule!1!match!type = default +vserver!!rule!1!match = default vserver!!rule!1!handler = server_info -vserver!!rule!1350!match!type = request +vserver!!rule!1350!match = request vserver!!rule!1350!match!request = ^/([^\?]*)$ vserver!!rule!1350!handler = redir vserver!!rule!1350!handler!rewrite!1!show = 1 vserver!!rule!1350!handler!rewrite!1!substring = /index.php?q=$1 -vserver!!rule!1351!match!type = request +vserver!!rule!1351!match = request vserver!!rule!1351!match!request = ^/([^\?]*)\?(.*)$ vserver!!rule!1351!handler = redir vserver!!rule!1351!handler!rewrite!2!show = 1 diff --git a/qa/138-ChangeUser-cgi.py b/qa/138-ChangeUser-cgi.py index 07bcb2b9a..c857df180 100644 --- a/qa/138-ChangeUser-cgi.py +++ b/qa/138-ChangeUser-cgi.py @@ -6,7 +6,7 @@ UID = pwd.getpwnam(USER)[2] CONF = """ -vserver!default!rule!1380!match!type = directory +vserver!default!rule!1380!match = directory vserver!default!rule!1380!match!directory = /change_user2 vserver!default!rule!1380!handler = cgi vserver!default!rule!1380!handler!change_user = 1 diff --git a/qa/139-domain-wildcards1.py b/qa/139-domain-wildcards1.py index 2e83bf046..933dd695b 100644 --- a/qa/139-domain-wildcards1.py +++ b/qa/139-domain-wildcards1.py @@ -9,12 +9,12 @@ vserver!!document_root = %s vserver!!domain!1 = -vserver!!rule!1!match!type = default +vserver!!rule!1!match = default vserver!!rule!1!handler = file vserver!rest_!document_root = %s vserver!rest_!domain!1 = *. -vserver!rest_!rule!1!match!type = default +vserver!rest_!rule!1!match = default vserver!rest_!rule!1!handler = file """ diff --git a/qa/140-SCGI-EmptyVars.py b/qa/140-SCGI-EmptyVars.py index 927a34cb3..34e266535 100644 --- a/qa/140-SCGI-EmptyVars.py +++ b/qa/140-SCGI-EmptyVars.py @@ -19,7 +19,7 @@ def handle_request (self): """ % (PORT) CONF = """ -vserver!default!rule!1400!match!type = directory +vserver!default!rule!1400!match = directory vserver!default!rule!1400!match!directory = vserver!default!rule!1400!handler = scgi vserver!default!rule!1400!handler!balancer = round_robin diff --git a/qa/141-FastCGI-EmptyVars.py b/qa/141-FastCGI-EmptyVars.py index 21e8c6420..09277ca02 100644 --- a/qa/141-FastCGI-EmptyVars.py +++ b/qa/141-FastCGI-EmptyVars.py @@ -20,7 +20,7 @@ def app (environ, start_response): """ % (PORT) CONF = """ -vserver!default!rule!1410!match!type = directory +vserver!default!rule!1410!match = directory vserver!default!rule!1410!match!directory = vserver!default!rule!1410!handler = fcgi vserver!default!rule!1410!handler!balancer = round_robin diff --git a/qa/142-SCGI-ExtraVars.py b/qa/142-SCGI-ExtraVars.py index 35e5be3d1..77eebc1d3 100644 --- a/qa/142-SCGI-ExtraVars.py +++ b/qa/142-SCGI-ExtraVars.py @@ -25,7 +25,7 @@ def handle_request (self): """ % (PORT) CONF = """ -vserver!default!rule!1420!match!type = directory +vserver!default!rule!1420!match = directory vserver!default!rule!1420!match!directory = vserver!default!rule!1420!handler = scgi vserver!default!rule!1420!handler!pass_req_headers = 1 diff --git a/qa/143-ContentRange-NoIO.py b/qa/143-ContentRange-NoIO.py index 1ddeac421..b88cdfdd1 100644 --- a/qa/143-ContentRange-NoIO.py +++ b/qa/143-ContentRange-NoIO.py @@ -9,7 +9,7 @@ DIR = "range_start_noio" CONF = """ -vserver!default!rule!1430!match!type = directory +vserver!default!rule!1430!match = directory vserver!default!rule!1430!match!directory = vserver!default!rule!1430!match!handler = file vserver!default!rule!1430!match!handler!iocache = 0 diff --git a/qa/144-ContentRange2-NoIO.py b/qa/144-ContentRange2-NoIO.py index b10f3fb0d..93210e37c 100644 --- a/qa/144-ContentRange2-NoIO.py +++ b/qa/144-ContentRange2-NoIO.py @@ -8,7 +8,7 @@ DIR = "range_start_100k_noio" CONF = """ -vserver!default!rule!1440!match!type = directory +vserver!default!rule!1440!match = directory vserver!default!rule!1440!match!directory = vserver!default!rule!1440!handler = file vserver!default!rule!1440!handler!iocache = 0 diff --git a/qa/145-ContentRange3-NoIO.py b/qa/145-ContentRange3-NoIO.py index 17113ade0..b392c527b 100644 --- a/qa/145-ContentRange3-NoIO.py +++ b/qa/145-ContentRange3-NoIO.py @@ -9,7 +9,7 @@ DIR = "range_start_100b2_noio" CONF = """ -vserver!default!rule!1450!match!type = directory +vserver!default!rule!1450!match = directory vserver!default!rule!1450!match!directory = vserver!default!rule!1450!handler = file vserver!default!rule!1450!handler!iocache = 0 diff --git a/qa/146-ContentRange4-NoIO.py b/qa/146-ContentRange4-NoIO.py index 120f3a0c6..4d957e84b 100644 --- a/qa/146-ContentRange4-NoIO.py +++ b/qa/146-ContentRange4-NoIO.py @@ -8,7 +8,7 @@ DIR = "range_end_100k_noio" CONF = """ -vserver!default!rule!1460!match!type = directory +vserver!default!rule!1460!match = directory vserver!default!rule!1460!match!directory = vserver!default!rule!1460!handler = file vserver!default!rule!1460!handler!iocache = 0 diff --git a/qa/147-ContentRange-Double-NoIO.py b/qa/147-ContentRange-Double-NoIO.py index e66a7677d..2c8772914 100644 --- a/qa/147-ContentRange-Double-NoIO.py +++ b/qa/147-ContentRange-Double-NoIO.py @@ -10,7 +10,7 @@ DIR = "range_both_100b_noio" CONF = """ -vserver!default!rule!1470!match!type = directory +vserver!default!rule!1470!match = directory vserver!default!rule!1470!match!directory = vserver!default!rule!1470!handler = file vserver!default!rule!1470!handler!iocache = 0 diff --git a/qa/148-ContentRange-Double2-NoIO.py b/qa/148-ContentRange-Double2-NoIO.py index 71f30ce9b..152d54015 100644 --- a/qa/148-ContentRange-Double2-NoIO.py +++ b/qa/148-ContentRange-Double2-NoIO.py @@ -9,7 +9,7 @@ DIR = "range_both_100k_noio" CONF = """ -vserver!default!rule!1480!match!type = directory +vserver!default!rule!1480!match = directory vserver!default!rule!1480!match!directory = vserver!default!rule!1480!handler = file vserver!default!rule!1480!handler!iocache = 0 diff --git a/qa/149-Common-PathInfo.py b/qa/149-Common-PathInfo.py index 6e16308a0..0eec353be 100644 --- a/qa/149-Common-PathInfo.py +++ b/qa/149-Common-PathInfo.py @@ -6,7 +6,7 @@ DIR = "common_pathinfo_1" CONF = """ -vserver!default!rule!1490!match!type = directory +vserver!default!rule!1490!match = directory vserver!default!rule!1490!match!directory = vserver!default!rule!1490!handler = common vserver!default!rule!1490!handler!allow_pathinfo = 1 diff --git a/qa/150-Common-No-PathInfo.py b/qa/150-Common-No-PathInfo.py index bc6dae279..9be29d639 100644 --- a/qa/150-Common-No-PathInfo.py +++ b/qa/150-Common-No-PathInfo.py @@ -6,7 +6,7 @@ DIR = "common_pathinfo_2" CONF = """ -vserver!default!rule!1500!match!type = directory +vserver!default!rule!1500!match = directory vserver!default!rule!1500!match!directory = vserver!default!rule!1500!handler = common vserver!default!rule!1500!handler!allow_pathinfo = 0 diff --git a/qa/151-SCGI-vars.py b/qa/151-SCGI-vars.py index 2b089e8cb..fdcefb53b 100644 --- a/qa/151-SCGI-vars.py +++ b/qa/151-SCGI-vars.py @@ -19,7 +19,7 @@ def handle_request (self): """ % (PORT) CONF = """ -vserver!default!rule!1510!match!type = directory +vserver!default!rule!1510!match = directory vserver!default!rule!1510!match!directory = vserver!default!rule!1510!handler = scgi vserver!default!rule!1510!handler!check_file = 0 diff --git a/qa/152-SCGI-vars2.py b/qa/152-SCGI-vars2.py index b28df75a1..477b7fb20 100644 --- a/qa/152-SCGI-vars2.py +++ b/qa/152-SCGI-vars2.py @@ -21,7 +21,7 @@ def handle_request (self): """ % (PORT) CONF = """ -vserver!default!rule!1520!match!type = directory +vserver!default!rule!1520!match = directory vserver!default!rule!1520!match!directory = vserver!default!rule!1520!handler = scgi vserver!default!rule!1520!handler!check_file = 0 diff --git a/qa/153-SCGI-vars-root.py b/qa/153-SCGI-vars-root.py index 87ad1f218..9114850a0 100644 --- a/qa/153-SCGI-vars-root.py +++ b/qa/153-SCGI-vars-root.py @@ -21,7 +21,7 @@ def handle_request (self): CONF = """ vserver!scgi6!document_root = /fake -vserver!scgi6!rule!1530!match!type = default +vserver!scgi6!rule!1530!match = default vserver!scgi6!rule!1530!handler = scgi vserver!scgi6!rule!1530!handler = scgi vserver!scgi6!rule!1530!handler!check_file = 0 diff --git a/qa/154-DirRedirection.py b/qa/154-DirRedirection.py index 303f07be1..943833731 100644 --- a/qa/154-DirRedirection.py +++ b/qa/154-DirRedirection.py @@ -5,7 +5,7 @@ REQ = "%s/d/e" % (DIR) CONF = """ -vserver!default!rule!1540!match!type = directory +vserver!default!rule!1540!match = directory vserver!default!rule!1540!match!directory = / vserver!default!rule!1540!handler = common vserver!default!rule!1540!document_root = %s diff --git a/qa/155-DirRedirection2.py b/qa/155-DirRedirection2.py index bff29b732..d4cc733b1 100644 --- a/qa/155-DirRedirection2.py +++ b/qa/155-DirRedirection2.py @@ -7,7 +7,7 @@ DIR2 = "%s/g/h" % (REQ) CONF = """ -vserver!default!rule!1550!match!type = directory +vserver!default!rule!1550!match = directory vserver!default!rule!1550!match!directory = / vserver!default!rule!1550!handler = common vserver!default!rule!1550!document_root = %s diff --git a/qa/157-Dirlist-symlinks.py b/qa/157-Dirlist-symlinks.py index 2ecfd5289..aef639140 100644 --- a/qa/157-Dirlist-symlinks.py +++ b/qa/157-Dirlist-symlinks.py @@ -5,7 +5,7 @@ FILE_NAME = "real_file_we_will_link" CONF = """ -vserver!default!rule!1570!match!type = directory +vserver!default!rule!1570!match = directory vserver!default!rule!1570!match!directory = / vserver!default!rule!1570!handler = dirlist vserver!default!rule!1570!handler!symlinks = 0 diff --git a/qa/158-RuleHeader1.py b/qa/158-RuleHeader1.py index c5376e57b..f983a51ee 100644 --- a/qa/158-RuleHeader1.py +++ b/qa/158-RuleHeader1.py @@ -4,7 +4,7 @@ REFERER = "example.com" CONF = """ -vserver!default!rule!1580!match!type = header +vserver!default!rule!1580!match = header vserver!default!rule!1580!match!header = Referer vserver!default!rule!1580!match!match = .+\.com vserver!default!rule!1580!handler = cgi diff --git a/qa/159-RuleHeader2.py b/qa/159-RuleHeader2.py index 3e084b273..7d0e06199 100644 --- a/qa/159-RuleHeader2.py +++ b/qa/159-RuleHeader2.py @@ -4,12 +4,12 @@ REFERER = "example.com" CONF = """ -vserver!default!rule!1590!match!type = header +vserver!default!rule!1590!match = header vserver!default!rule!1590!match!header = Referer vserver!default!rule!1590!match!mismatch = .+\.com vserver!default!rule!1590!handler = cgi -vserver!default!rule!1591!match!type = header +vserver!default!rule!1591!match = header vserver!default!rule!1591!match!header = Referer vserver!default!rule!1591!match!mismatch = .+\.net vserver!default!rule!1591!handler = file diff --git a/qa/run-tests.py b/qa/run-tests.py index ab1bf42e9..25ef84bd7 100755 --- a/qa/run-tests.py +++ b/qa/run-tests.py @@ -132,12 +132,12 @@ vserver!default!document_root = %s vserver!default!directory_index = test_index.html,test_index.php,/super_test_index.php -vserver!default!rule!1!match!type = default +vserver!default!rule!1!match = default vserver!default!rule!1!handler = common """ % (PORT, panic, pid, CHEROKEE_MODS, CHEROKEE_DEPS, www) PHP_FCGI = """\ -10000!match!type = extensions +10000!match = extensions 10000!match!extensions = php 10000!match!final = 0 10000!handler = fcgi @@ -148,7 +148,7 @@ 10000!handler!balancer!local1!interpreter = %s -b %d""" % (PHP_FCGI_PORT, look_for_php(), PHP_FCGI_PORT) PHP_CGI = """\ -10000!match!type = extensions +10000!match = extensions 10000!match!extensions = php 10000!match!final = 0 10000!handler = phpcgi