IBM Domino url redirect rule processed by closely matching substitution rule
We have moved a lot of pages on our Domino based web site. Using internet sites, we have added 301 redirect rules for the old urls so that the various bots will stop indexing the pages and not ding the site in search results because we didn't handle the move (404 not found is not great for SEO).
But Domino processes substitution rules before redirect rules. And per the Domino documentation, when there is no wildcard in a rule it appends "/*" to a rule. Given the processing order and wildcard behavior, we have encountered a problem where an existing rule that must remain in place that shares a common root of the old URLs is processing the substitution.
These are the old URLs:
- clothing/pants/womens
- clothing/pants/mens
These are the new URLs:
- clothing/slacks/womens
- clothing/slacks/mens
This is the existing substitution rule that must remain in place:
- clothing/
When "clothing/pants/womens" existed along with "clothing/", the substitution rules always processed the "clothing/pants/womens" rule even though "clothing/" existed. But once we move the old URL to a 301 redirect, the "clothing/" substitution rule starts picking up the old URL and processing it. The effect is the user ends up in the wrong place and bots keep indexing the URL because a 200 is returned.
It is clear in the documentation that Domino adds "/*" to any rule that does not contain a wildcard. But is there any way to tell Domino that it must have a precise match on an incoming URL? Am I missing something in an internet site configuration document or anything?
There are some coding options I am looking at, but would rather keep the solution isolated to the system configuration so that we don't have to go to multiple places to manage our site URL processing rules.
Thanks.
Also not a direct answer on your question there may be a workaround. Starting with Domino 9 on Windows, the product ships with IBM HTTP server (IHS) as an install option. IHS is just an IBM fork of Apache. In your case you can use Apache filter rules and mod_rewrite to create more powerful rules.
Good thing worth mentioning: IHS comes bundled with your license. No extra costs.