Você ativou o recurso de conteúdo estático?
Estou tentando configurar uma máquina de demonstração que é EEEPC com o Windows 7 Home Premium Edition, todos os drivers carregados corretamente (não me pergunte por que é a edição Home) com o IIS7 instalado.
Eu implantei o aplicativo para ser demo-ed na máquina que é um site ASP.NET MVC, adicionado site através do console, adicionado um pool de aplicativos. O pool de aplicativos é executado como NetworkService e o convidado é autenticado como IUSR.
Adicionei os direitos de modificação ao NetworkService e leia & executar direitos para IUSR para a pasta do site e seu conteúdo.
When I hit the root of the web, say http://example.com/ I gets a proper HTML rendered from the website (which means the application works) but the problem is that all static content returns blank.
Não sei por que isso está acontecendo. Nenhuma página de erro 404 ou 500, apenas uma resposta vazia quando acesso o conteúdo estático. Todo o conteúdo gerado pelo ASP.NET funciona bem (embora um pouco estranho, já que todo o CSS e imagens não serão carregados)
Por favor, ajude, IIS7 Management Console é muito confuso para mim e eu preciso da máquina até amanhã.
Você ativou o recurso de conteúdo estático?
No meu caso, a função de servidor já estava instalada e, no entanto, o manipulador estático serviu páginas em branco, mesmo para um site de teste trivial com apenas um mapeamento de manipulador.
A correção foi para ativar a restrição de solicitação "Chamar manipulador somente se a solicitação estiver mapeada para". Não importa se eu o defino como "Arquivo" ou "Arquivo ou diretório"; desde que a caixa de seleção esteja ativada, funciona:
Seissoaindanãoajudar,outracoisaquelevaapáginasembrancoétentarespecificarumcaminhonaseção"Caminho de solicitação", como public
ou talvez public/*
. O último está simplesmente errado, enquanto o primeiro deve ser aceito, mas resulta em páginas em branco. A solução é envolver o mapeamento do manipulador em uma seção <location path='public'>
, especificando *
para a configuração "Caminho de solicitação". Ou, no Gerenciador do IIS, expanda o site e selecione sua pasta primeiro, e, em seguida, edite os mapeamentos do manipulador.
Como sugeriu @MattB, não tive o recurso "Conteúdo estático" ativado, mas isso é apenas uma parte do problema.
Eu adicionei o recurso "Static Content" e ainda assim o problema ainda persiste, então eu removi o MvcHttpHandler padrão da lista de mapeamentos do manipulador e de alguma forma o problema resolve-se ... então o problema era que o MvcHttpHandler estava interceptando solicitações antes do StaticFileHandler,
O FYI, depois de instalar o "Conteúdo estático", também garante que ...
No meu caso, MvcHttpHandler estava acima de tudo, resolvi o problema movendo-o para o final da lista, que é o local mais sensato em que ele deveria estar, porque os manipuladores de arquivos AXD, manipuladores TRACE, manipulador OPTIONS e conteúdo estático tem uma chance de lidar com o pedido primeiro.
Espero que isso ajude alguém a pesquisar o mesmo problema: -)