2013-03-12 3 views
4

У нас есть много (более 100) перенаправляет в нашем web.config какПеремещение <httpredirect> из web.config в отдельный файл конфигурации

<configuration> 
    <system.webServer> 
     <httpRedirect enabled="true" exactDestination="true" httpResponseStatus="Found"> 
     <add wildcard="/a" destination="https://stackoverflow.com/a/dfdf/default.htm" /> 
     <add wildcard="/sad" destination="/aasd/dfdf/defsadault.htm" /> 
     <add wildcard="/asdsaa" destination="/aasdas/dfasddf/default.htm" /> 
     <add wildcard="/aasdsa" destination="/asdsaa/dfdf/defsdault.htm" /> 
     <add wildcard="/aasd" destination="/adsa/dfdf/default.htm" /> 
..... more than 100 
     </httpRedirect> 
    </system.webServer> 
</configuration> 

Есть ли способ, которым мы можем быть в этом разделе удалось в отдельной сети .config или любое другое лучшее решение?

ответ

4

Вы можете переместить некоторые элементы конфигурации в свой собственный файл конфигурации, чтобы уменьшить беспорядок в файле web.config.

<configuration> 
    <system.webServer> 
     <httpRedirect configSource="httpRedirects.config" /> 
    </system.webServer> 
</configuration> 

Это достигается добавлением атрибута configSource, как показано выше.

И в вашем индивидуальный httpRedirects.config

<httpRedirect enabled="true" exactDestination="true" httpResponseStatus="Found"> 
    <add wildcard="/a" destination="https://stackoverflow.com/a/dfdf/default.htm" /> 
    <add wildcard="/sad" destination="/aasd/dfdf/defsadault.htm" /> 
    <add wildcard="/asdsaa" destination="/aasdas/dfasddf/default.htm" /> 
    <add wildcard="/aasdsa" destination="/asdsaa/dfdf/defsdault.htm" /> 
    <add wildcard="/aasd" destination="/adsa/dfdf/default.htm" /> 
</httpRedirect> 

Примечание Я попытался это только с другими элементами конфигурации.

+1

Благодаря Rob ... Некоторые, как его не работает

+0

@vikaskumar сделать httpRedirect атрибутов (особенно включены = "истина") появляются во внешнем файле конфигурации? – jbl

+0

Его не было, и он работал после добавления того же внешнего файла. спасибо –

1

Вы можете хранить, что в отдельный файл конфигурации, как показано здесь: SectionInformation.ConfigSource Property

Для того, чтобы избежать загромождения файла конфигурации - web.config - он может быть определен в отдельном файле конфигурации. Этот файл затем можно ссылаться из файла web.config, как показано ниже:

<httpRedirect configSource="httpRedirects.config" /> 

Атрибут configSource говорит конфигурации IIS, что секция <httpRedirect> определяется в отдельном файле httpRedirects.config.

EDIT:

Пожалуйста, убедитесь, что у вас есть httpRedirect атрибут установлен в enabled=true в значение по умолчанию является ложным.

<httpRedirect enabled="true" configSource="httpRedirects.config" /> 
+1

Спасибо Vishal ... Некоторые, как он не работает для

+0

В чем проблема ..? –

+0

@vikaskumar Я просто обновляю свой ответ –

Смежные вопросы