El servidor web de desarrollo integrado en Visual Studio (Cassini) no tiene conocimiento de <system.webServer>
, solamente IIS7.x o IIS7.5 expreso va a consumir estos ajustes.
También los tipos de contenido de archivos estáticos en el servidor web de desarrollo de Visual Studio están codificados.
De Microsoft.VisualStudio.WebHost.Connection
(desmontado utilizando .NET Reflector):
private static string MakeContentTypeHeader(string fileName)
{
string str = null;
FileInfo info = new FileInfo(fileName);
switch (info.Extension.ToLowerInvariant())
{
case ".bmp":
str = "image/bmp";
break;
case ".css":
str = "text/css";
break;
case ".gif":
str = "image/gif";
break;
case ".ico":
str = "image/x-icon";
break;
case ".htm":
case ".html":
str = "text/html";
break;
case ".jpe":
case ".jpeg":
case ".jpg":
str = "image/jpeg";
break;
case ".js":
str = "application/x-javascript";
break;
}
if (str == null)
{
return null;
}
return ("Content-Type: " + str + "\r\n");
}
Para ser sinceros, con el advenimiento de IIS7.5 expreso que no puedo ver por qué te gustaría utilizar el built-in web servidor. Cassini puede ser la causa de tanta confusión cuando se trata del tiempo de implementación en un servidor de producción porque no se parece en nada a la situación real (seguridad, configuración, etc.) mientras que si puede hacer que su sitio se ejecute en IIS7.5 Express, entonces hay un bastante alto probabilidad de que la implementación en un servidor IIS7.5 de producción "simplemente funcione".
No me sorprendería que Microsoft haya sacado el servidor Cassini de la próxima versión de Visual Studio dado lo fácil que es ejecutarlo con IIS7.5 Express.
acabo de acordar que puedo usar IIS expreso ahora en VS2010 SP1, por lo que me hizo correr. Podría haber cambiado obvio a IIS completo para resolver el problema también ... pero tengo curiosidad por ver si hay una manera de hacer que los tipos MIME funcionen con el servidor desarrollado por defecto. –