qualquer regra de reescrita de url causa erro interno do servidor no iis7

2

Eu tenho o iis7 em um servidor Windows 2008 e o módulo 2 de reescrita de url do iis instalado.

Qualquer regra de reescrita de URL (no meu caso, uma regra de nome de domínio canônico simples) faz com que o webapp retorne um erro 500.

No meu caso, eu tenho 4 domínios mapeados para o mesmo aplicativo da web e quero redirecionar 3 dos domínios alternativos para o domínio principal. Depois de definir a regra, qualquer solicitação à webapp para esses domínios retornará um erro, o domínio de um o aplicativo da web que não foi afetado pela regra permanece ok.

Eu consertei o módulo iis url rewrite mas o problema continua.

Se eu desativar os erros personalizados, vejo que o problema está no meu aplicativo da Web. No entanto, se você não tiver regras de regravação / redirecionamento, não receberei qualquer erro. Provavelmente a reescrita está mexendo com algo no pipeline ..

O stacktrace é o seguinte:

[NullReferenceException: Object reference not set to an instance of an object.]
   Glimpse.Core.Extensions.DataStoreExtensions.Get(IDataStore store, String key) +35
   Glimpse.Core.Extensibility.AlternateMethod.NewImplementation(IAlternateMethodContext context) +50
   Castle.DynamicProxy.AbstractInvocation.Proceed() +595
   Castle.Proxies.IDependencyResolverProxy.GetService(Type serviceType) +177
   System.Web.Mvc.DependencyResolverExtensions.GetService(IDependencyResolver resolver) +61
   xxxxx.NHibernateSessionPerRequestModule.<Init>b__1(Object param0, EventArgs param1) +40
   System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +92
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +165

A reescrita / redirecionamento da URL não deve terminar o processamento da solicitação e enviar a resposta?

    
por rjlopes 27.04.2015 / 17:17

2 respostas

0

Não tenho certeza sobre o seu erro, mas, como ninguém mais tentou uma resposta e você tem um problema para resolver, sugiro uma maneira diferente de atingir sua meta.

Deixe seu aplicativo principal respondendo apenas com o nome que você deseja que as pessoas usem. Adicione um segundo aplicativo da web que responda aos três nomes que você deseja redirecionar. Configure este site para encaminhar o tráfego para o domínio principal.

    
por 28.04.2015 / 07:31
0

Você está criando as regras de redirecionamento na GUI ou editando web.config diretamente? Pode ser que o seu web.config tenha um erro em algum lugar. Tente desativar os erros personalizados para ver a mensagem de erro detalhada, isso ajudará você a rastrear o problema.

Encontre esta linha no seu web.config e descomente-a;

<customErrors mode="off"/>

Se você estiver fazendo alterações na GUI e tentar postar uma captura de tela das suas regras atuais, alguém poderá identificar o problema.

    
por 28.04.2015 / 08:11