Изменение расположения конфигурации перезаписи URL IIS - PullRequest
1 голос
/ 09 июня 2010

При использовании на уровне сайта модуль IIS7 URL Rewrite 2 сохраняет свою конфигурацию в файле web.config этого сайта. Я использую Sitecore CMS, и рекомендуется хранить любые настройки web.config в отдельном конфигурационном файле для простоты обновления, установки / настройки производства и т. Д.

Можно ли указать другой файл конфигурации для перенаправлений IIS7?

Я знаю, что перезаписи на уровне приложения хранятся в ApplicationHost.config, но у меня есть несколько сайтов, работающих на сервере, и я хотел бы их разделить.

Спасибо, Адам

Ответы [ 3 ]

1 голос
/ 26 августа 2013

Вы также можете попробовать использовать карты перезаписи

<rewrite>
    <rewriteMaps configSource="rewriteMaps.config" />
</rewrite>

Пример файла rewriteMaps.config:

<rewriteMaps>
    <rewriteMap name="CustomRewrites" defaultValue="">
        <add key="/instructions" value="/documents" />
    </rewriteMap>
</rewriteMaps>
1 голос
/ 09 июня 2010

Для поддержки упомянутого вами передового опыта Sitecore реализует подключаемые конфигурации, но только для элементов внутри <sitecore> раздела web.config.Поэтому, если перезапись URL в IIS7 не обеспечивает какой-либо способ перенести его содержимое в отдельную конфигурацию (как это делает ASP.NET для connectionstrings.config), я боюсь, вам придется хранить его в основном файле web.config.*

Извините, если я говорю очевидные вещи.

0 голосов
/ 09 июня 2010

Я не знаком с конфигурацией перезаписи URL, но у меня есть пример перемещения отображения URL в отдельный файл:

<urlMappings configSource="config\urlMappings.config"></urlMappings>

И этот файл выглядит следующим образом:

<?xml version="1.0"?>
<urlMappings enabled="true">
    <add url="~/somedealer" mappedUrl="/?theme=4" />
    <add url="~/someotherclient" mappedUrl="/?theme=12" />
</urlMappings>

Я уверен, что перезапись URL работает так же.

...