6
votes

IIS Express ne servant pas de fichiers statiques à Firefox

J'utilise Visual Studio 2013 avec IIS Express 8 pour développer une demande d'intranet local. Cette application a été construite à partir d'ASP.NET MVC 4 dans Visual Studio 2012 et a plus tard migratit en 2013. J'avais utilisé Visual Studio Development Server jusqu'à ce que j'ai migré vers VS2013 sans problème.

Après la migration, l'application compile, exécute et authentifie bien, mais ce n'est pas servant des fichiers statiques - il renvoie simplement une réponse http 500 sans plus de détails. Voir l'image ci-dessous:

IIS Express ne servant pas de fichiers statiques

Cela arrive également aux images et aux fichiers CSS.

Que puis-je vérifier pour résoudre ce problème? Toute suggestion?

mise à jour:

  • L'application fonctionne bien dans les IIS locales (version 8).
  • Cela fonctionne dans IIS Express sur d'autres ordinateurs.

    Mise à jour 2:

    • Après d'autres tests, j'ai découvert que ceci ne se produit que sur Mozilla Firefox (ça fonctionne bien dans Internet Explorer et Google Chrome) - je n'ai pas remarqué avant que je n'utilise toujours pas FF. En utilisant actuellement la version 29.

      Des idées?


0 commentaires

4 Réponses :


0
votes

La seule chose qui semble applicable à votre situation est un problème avec l'installation de IIS Express, car il s'agit d'un problème similaire à quelque chose de voir dans les versions précédentes IIS Express . Je le réinstallerais soit de la ré-installez-le si votre version de Windows peut accueillir IIS 8 dans laquelle vous permetriez simplement activer le contenu statique.

Si cela n'était qu'une question de ne pas avoir de contenu statique activé ou des autorisations pour le contenu statique, vous obtenez une erreur de 404 ou 401 respectivement. J'espère que cela vous aidera ...


2 commentaires

@ Meryovi, dans ce cas, j'essaierais de voir si vous pouvez utiliser des IIS pleine épouse et voir si vous pouvez servir du contenu statique. Si vous ne le pouvez pas, je ne sais pas quoi vous dire sans voir votre ordinateur pour rechercher des indices. Désolé, aucune réponse facile semble être là-bas pour votre problème s'il n'y a pas de changement après une réinstallation.


Cela fonctionne bien dans IIS régulier, je ne sais tout simplement pas comment le réparer dans IIS Express ou où regarder. Merci pour votre aide.



0
votes

Je regarderais dans la visionneuse des événements de la machine sous l'application et le système pour voir quel est le problème. Est-ce que les IIS servent quelque chose dans le même dossier, tels que des fichiers .txt ,.html, des images JPG?

Il pourrait être possible une autorisation de fichier ou de dossier et / ou l'utilisateur anonyme utilisé pour y accéder sous IIS.

Mon premier point serait une visionneuse d'événements cependant pour des informations plus détaillées sur l'erreur 500.


6 commentaires

Il ne sert pas de fichier statique qui dispose d'une extension (il servira des pages de rasoir et des résultats d'action MVC qui sont des pages HTML extension). Je ne vois aucun message d'erreur dans la visionneuse d'événements.


Avez-vous changé le routage en MVC?


Pouvez-vous poster un coup d'écran des paramètres de Web Projets?


Oui, j'utilise l'attributTerveting. Mais si je crée un nouveau projet avec les paramètres par défaut, la même chose se produit.


Intéressant. Quels changements avez-vous apportés à IIS Express conformément à la description?


Je viens de remarquer que cela ne se produit que dans Firefox. Les modifications que j'ai faites ensuite pour activer Win-Auth ne sont plus pertinentes, car j'ai restauré la configuration d'origine plus tard.



3
votes

Avez-vous eu un coup d'oeil à cela?

Application ASP.NET MVC Donne une erreur de serveur interne uniquement lors de la visualisation dans Firefox

Cela n'explique pas pourquoi cela fonctionne sur IIS, mais un firefox ne prend pas en charge l'authentification d'intégration hors de la boîte.


0 commentaires

13
votes

Enfin! J'ai pu résoudre ce problème avec l'aide de cette question .

Cela se produisait car Firefox par défaut a une authentification intégrée de Windows désactivée. Cela n'a aucun sens pour moi pourquoi cela fonctionne bien dans des fichiers IIS réguliers ou dans des fichiers dynamiques (actions de contrôleur, webapi, etc.), mais c'est un mystère pour un autre jour.

Pour activer l'authentification intégrée de Windows, j'ai suivi cette étape:

  • Type À propos de: config dans la barre d'adresse de Firefox (bar NAV)
  • Rechercher des Network.Automatic-NTLM-Auth.Trusted-URIS
  • Double-cliquez sur Network.Automatic-NTLM-Auth.Trusted-URIS
  • Ajouter http: // localhost à la liste (coller si c'est vide)

    Après cela, je viens de frapper F5 dans Firefox et tout a fonctionné comme prévu.

    Ce problème est mal documenté, alors je me demande si personne d'autre utilise Firefox avec MVC pour développer des applications Web à l'aide de l'authentification intégrée de Windows?


2 commentaires

Ah, "Naviguer vers" signifie que le type: config in Firefox Browser Nav.Bar (barre d'adresse). D'accord, Firefox est comme un Code secret Decryptor. Après ces étapes, j'ai dû souffler sur un sifflet qui sonnait un parfait A 440Hz, puis je devais taper 6 caractères non dérangés. :) Enfin arrivé là-bas.


Encore une fois, cela mord moi, puis cette réponse enregistre la journée.