Há um IIS 7.5 instalado recentemente em um servidor dedicado. Aplicativo Web ASP.NET 4.0 copiado para sua pasta, novo site é criado em seu próprio IP na publicação 80, contas IIS_IUSR e IUSR têm direitos de leitura / execução na pasta do site, o site é atribuído ao seu próprio pool de aplicativos integrado com 4.0 .NET (Eu tentei o pool clássico com os mesmos resultados).
O problema: quando tento acessar este site, o navegador carrega apenas o conteúdo gerado pelos recursos do .NET, como páginas aspx, arquivos .axd, etc. Imagens estáticas, arquivos estáticos js, css e html estão na origem da página, mas o IIS não servi-los. As ferramentas de desenvolvimento em todos os navegadores reclamam que todos esses recursos estáticos foram enviados pelo servidor com um tipo de conteúdo errado (texto simples em vez de imagem, estilos, etc.). O que eu faço de errado?
Respostas:
O IIS 7 / 7.5 possui um novo "recurso" - Serviços de Função. A postagem do rsbarro me lembrou que existe um serviço de função responsável pelo conteúdo estático. É servidor da Web / recursos comuns de HTTP / conteúdo estático. Verifique se o ícone Tipos MIME está presente no Gerenciador do IIS, como sugerido pelo rsbarro.
Você precisa instalar o serviço de função Static Content, se não o fizer. Para fazer isso, selecione o:
Pelo que você descreve, esse parece ser o seu problema.
Em geral, se o IIS7 não fizer algo que o IIS6 fez, a primeira coisa a verificar é verificar se o serviço de função correspondente está instalado. Espero que isto ajude.
fonte
No IIS, acesse seu site e verifique a seção Tipos MIME (veja a imagem abaixo). Verifique se você vê entradas nessa lista para .js, .css, .html etc., e se elas têm o tipo MIME adequado especificado. O IIS 7.5 servirá apenas páginas se houver um tipo MIME especificado. Por padrão, os tipos MIME para essas extensões são configurados no
applicationHost.config
arquivo localizado naC:\Windows\system32\inetsrv\config
pasta (pode ser necessário executar o bloco de notas como administrador para exibir o arquivo). Basta procurar .js e você deve encontrar uma entrada abaixo<mimeMap>
no<staticContent>
elementoEssas configurações podem ser substituídas no seu
web.config
arquivo. Se estiverem, aparecerão no seguinte local noweb.config
:Eu definitivamente começaria verificando lá. Se tudo parecer ok na seção Tipos de MIME, é possível que você tenha um módulo que esteja interferindo nas solicitações de arquivos estáticos (mas provavelmente apenas se você tiver
<modules runAllManagedModulesForAllRequests="true" />
definido na sua<system.webServer>
seção). Se esse for o caso, eu removeria todos os módulos configurados no seuweb.config
e verificaria se você pode exibir os arquivos estáticos e depois os leria um de cada vez para ver qual módulo está causando o problema. Se você não conseguir descobrir, sugiro postar o conteúdo das suasweb.config
(ou pelo menos as seçõessystem.web
esystem.webServer
) na pergunta.fonte
Eu tive o mesmo problema, mas meu pool de aplicativos estava em execução em uma conta de domínio e esse usuário tinha direitos na pasta do site. Meu site renderizou aspx, mas nenhum conteúdo estático. O que resolveu meu problema foi adicionar o grupo IIS_IUSRS à diretiva de segurança local denominada "representar um cliente após a autenticação". O grupo IIS_IUSRS tinha minha conta de domínio. Estou executando o servidor iis 7.5 windows 2008.
fonte