Pergunta

Eu estou lutando para contornar os erros 404 de asp.net MVC beta ao implantar no IIS 6. Eu tinha esse trabalho em uma das visualizações por .mvc mapeamento no IIS mas isso funciona já não. Eu li post de Omar e várias outras pessoas na web e tentou suas soluções mas sem sorte até agora.

A página inicial abre sem um problema no IIS 6, mas outros 404 eo site funciona bem em IIS 7.

Alguém implantado asp.net beta MVC para IIS 6 com sucesso? Se sim, quais os ajustes que você precisa fazer para o código e / ou IIS configurações para obtê-lo para o trabalho?

Foi útil?

Solução

Eu encontrei uma solução para o meu problema de Steve Sanderson blogue (Graças Steve):

Use um mapeamento de curinga para aspnet_isapi.dll. Isto diz-IIS 6 para processar todas as solicitações usando ASP.NET, então roteamento é sempre invocado, e não há nenhum problema. É absolutamente fácil de configurar:

  • Gerenciador de IIS aberto (run -> inetmgr -> OK)
  • clique com o botão direito seu aplicativo, vá para Propriedades
  • em seguida, guia Diretório, clique em Configuração.
  • Aplicação Sob Wildcard mapas, clique em Inserir (não Adicionar, que é confusamente logo acima)
  • em seguida, digite C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ aspnet_isapi.dll para “Executável” e desmarque Verificar esse arquivo existe.

Outras dicas

Eu não consigo comentários de escrita ainda. Então, eu vou escrever uma nova resposta.

Existem algumas perguntas semelhantes que circundam em stackoverflow. Eu estou usando MVC 3. Eu sei que a questão foi MVC 2 relacionados. Mas uma vez que este é o primeiro post stackoverflow eu esbarrei no, acho que vale a pena mencionar que:

  • quando você usa MVC 3, você precisa adicionar um novo mapeamento de extensão com o executável do .NET Framework 4 (C: \ WINDOWS \ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_isapi.dll)

Eu só descobri que eu mesmo não precisa configurar o mapeamento de extensão.

  • Ainda não funcionou para mim, então :) Eu ainda tinha que 'Permitir' ASP.NET v4.0.30319 na seção Web Service Extensions no IIS:
    • IIS aberta
    • clique no servidor nó
    • abrir a seção Web Service Extensions
    • selecione o v4.0 ASP.NET ....
    • clique direito -> Permitir Bom para ir!

reescrita de URL pode ajudá-lo a resolver o problema. Eu tenho implementado solução permitindo implantar aplicativo MVC em qualquer versão, mesmo quando hospedagem virtual é usado IIS. http://www.codeproject.com/KB/aspnet/ iis-aspnet-url-rewriting.aspx

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top