Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 将MVC应用程序发布到默认网站内的虚拟目录时未显示图像_Asp.net Mvc_Iis_Routing_Virtual Directory - Fatal编程技术网

Asp.net mvc 将MVC应用程序发布到默认网站内的虚拟目录时未显示图像

Asp.net mvc 将MVC应用程序发布到默认网站内的虚拟目录时未显示图像,asp.net-mvc,iis,routing,virtual-directory,Asp.net Mvc,Iis,Routing,Virtual Directory,我正在使用ASP.NET MVC 1和VS2008开发一个应用程序。当我将其部署到WinXP上IIS6中的默认网站时,所有图像都会正确显示,任何给定图像的路径都是localhost/Content/ImagesUI/[image].[ext] 当我将其部署到同一站点内创建的虚拟目录时,任何映像请求都会返回IIS标准404错误页,而路径是localhost/[DirectoryName]/Content/ImagesUI/[image].[ext]——这似乎是正确的,对吗 我正在站点和目录配置中将

我正在使用ASP.NET MVC 1和VS2008开发一个应用程序。当我将其部署到WinXP上IIS6中的默认网站时,所有图像都会正确显示,任何给定图像的路径都是localhost/Content/ImagesUI/[image].[ext]

当我将其部署到同一站点内创建的虚拟目录时,任何映像请求都会返回IIS标准404错误页,而路径是localhost/[DirectoryName]/Content/ImagesUI/[image].[ext]——这似乎是正确的,对吗

我正在站点和目录配置中将.*映射到c:\windows\microsoft.net\framework\v2.0.50727\aspnet\u isapi.dll。删除此映射后,图像将正确显示。然而,当然,所有其他URL都不起作用

当我试图在浏览器中使用指向它的URL打开图像时,aspnet_wp.exe进程甚至没有启动。我重新启动了IIS来测试它-我只得到404或图像,这取决于*映射的存在。因此,我认为这与为MVC注册的路由或ASP无关

我找到的解决方案是将Content folder设置为虚拟目录,并从其配置中删除*映射。虽然这在某种程度上是可以的,但我想要一个更好的解决方案,它将解释并消除问题的原因,而不仅仅是解决问题


谢谢你的帮助

哈!它已本地化为具有包含“.”的虚拟目录名。我删除了句号,它起作用了!我当然会继续工作,但有什么解释吗?

请清理文本,因为它很难阅读。关于图像-可能您对图像的路径有问题。显示一些代码以查看如何在MVC视图中链接到它们。您应该使用Url.Content HTML Helper方法。谢谢,我正在使用更复杂的逻辑来构建Url,但是否可能localhost/[DirectoryName]/Content/ImagesUI/[image].[ext]不正确?无论如何,我会尝试Url。内容,它似乎适合我的需要。我尝试了,没有结果!它已本地化为具有包含“.”的虚拟目录名。我删除了句号,它起作用了!我当然会继续工作,但有什么解释吗?嗯,这里可能有一些IIS6的怪癖。