Pergunta

Primeiro, deixe -me explicar que estou em uma solução hospedada e não há muito que possa fazer de maneiras de configuração e configurações para o IIS 6.

Eu tenho MVC2 trabalhando até certo ponto, estou usando o seguinte código Global.asax:

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default",
            "{controller}.aspx/{action}/{id}",
            new { action = "Index", id = "" }
        );

        routes.MapRoute(
            "Root",
            "",
            new { controller = "Default", action = "Index", id = "" }
        );
    }

Na primeira rota, eu tive que especificar {controlador} .aspx, devido ao IIS 6 não conseguir executar o código não ASPX (ou algo assim, não tem certeza).

O que é bom, os seguintes trabalhos: hxxp: //mysite.com/home.aspx, hxxp: //mysite.com/projects.aspx, hxxp: //mysite.com/contact.aspx

que são todos controladores e eu também posso executar suas ações respeitadas.

O problema é que eu não posso fazer um URL vazio corretamente (ou seja, hxxp: //mysite.com/), ele me fornece um erro de "listagem de diretórios negada".

A pergunta que tenho, está com um arquivo padrão.aspx localizado no root (que executa), posso carregar o controlador doméstico sem usar uma resposta simples.Redirect?

Obrigado Matthew

Foi útil?

Solução

O fato de você estar recebendo "Listagem de diretórios negados" significa que o Filetr ISAPI não corresponde por trabalhar com o MVC.

Outras dicas

O fato de você estar obtendo "listagem de diretório negada" significa que você não tem um documento padrão e, portanto, o servidor está tentando mostrar uma lista de arquivos na pasta root.

Atualize o documento padrão para algo como "Default.aspx". Seu provedor de hospedagem deve ter uma opção para isso. Isso é muito comum.

Você pode desativar esse comportamento no iis6 e iis7

// Disable IIS looking at physical files and directories
RouteTable.Routes.RouteExistingFiles = true;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top