Você realmente não tem outra escolha aqui se estiver fazendo isso manualmente. Mesmo que você tenha feito apenas um mapeamento de manipulador de cada vez por meio da interface do usuário, você precisará ter o site e o gerenciador global instalados ao mesmo tempo (ainda que brevemente) ou remover o site local e, em seguida, adicioná-lo novamente as configurações globais.
Você pode, claro, criar um script usando appcmd.exe
:
http://www.iis.net/ConfigReference/system.webServer/handlers
Por exemplo:
Para remover um manipulador de um site (estou usando o site padrão como um exemplo) -
appcmd set config "Default Web Site" -section:system.webServer/handlers /-"[name='MyHandler']"
Para adicionar um manipulador à configuração global ou "APP HOST":
appcmd set config -section:system.webServer/handlers /+"[name='MyHandler',
path='*.mything',modules='MyApp.MyHandler',preCondition='integratedMode',
resourceType='Unspecified',verb='GET,HEAD,POST']"
/commit:apphost
Eu dividi o comando acima em quatro linhas apenas para torná-lo legível. Na verdade, ele deveria ser apenas uma linha.
Usar um script significa que seu tempo de interrupção seria de cerca de um minuto, em vez de vários.