This is a URL normalizer we use that is simple to use and generate for dealing with hosts that mix up slash suffixed URL's with non-slash suffixed URL's.
It is similar to the host nomalizer, reducing the number of duplicates while crawling. It takes the new line delimited rules, separated by either a tabulator or whitespace, followed by a + (PLUS) or - (MINUS) sign denoting whether or not a slash is to be added to the path.
The normalizer ignores pages that look like files with extensions, see tests.
Note: the normalizer must be enhanced to not take hosts as first argument of a rule, but host/path prefixes because some hosts need different rules depending on the root path. For example,
- example.org/cms/news/1/2/3/4 is a CMS that doesn't accept slashes, if they are suffixed, the user is redirected to a non-slash page;
- example.org/files/a/b/ wants to do it just the other way around.