У нас есть сайт Umbraco, который использует конфигурационный файл UrlRewriting.net для обработки перенаправлений. Клиент имеет около 60 посадочных доменов, которые они купили и указали на сайт, однако они хотят, чтобы 301 перенаправлял все домены приземления в фактический домен вместе с чем-либо после домена, для этого примера я назову его http://www.mainsite.com/
Regex исключить конкретный домен
Я использую следующее регулярное выражение, которое перенаправляет все, что не является основным сайтом, на главную страницу с прилагаемыми страницами.
<add name="GlobalRedirect"
virtualUrl="https?:\/\/((?!www\.mainsite\.co\.uk).*)\/(.*)"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="http://www.mainsite.co.uk/$2"
redirect="Domain"
redirectMode="Permanent" />
http://www.anything.co.uk/a-page
правильно перенаправляют http://www.mainsite.co.uk/a-page
.
Однако http://www.anything.com/subpage/another-page
перенаправляется на http://www.mainsite.com/another-page
и отсутствует /subpage/
.
Ошибка за пределами отрицательного обзора, но я не могу решить, как ее исправить.
Любая помощь очень ценится.
Что произойдет, если вы удалите '. *' В первой группе сразу после отрицательного просмотра? – elolos