mvc图片无法显示

yaotomo 2018-05-22 05:13:39
上传后的文件相对路径保存在数据库中
从数据库中读取路径,显示在前台
我的磁盘上有这个文件,为什么一直显示404呢,是路径哪里有问题吗
...全文
651 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
routes.RouteExistingFiles = true;
改配置设置了无效说明,可能有其它配置和它产生了冲突,可以查看RouteConfig.cs 或者 Web.config中有没有注册什么handler
yaotomo 2018-05-22
  • 打赏
  • 举报
回复
我知道怎么回事了,后台的文件路径没整对 在数据库保存相对路径时new了一个GUID 在保存文件时又new了一个GUID 所以导致文件名不一样 刚开始看的一大串还以为文件名一样呢 谢谢各位
正怒月神 版主 2018-05-22
  • 打赏
  • 举报
回复
引用 5 楼 yaotomo 的回复:
[quote=引用 3 楼 hanjun0612 的回复:] 404是没有找到这个资源。 你发出来的是你的物理路径, 但是iis访问的是发布后的虚拟路径。不是一个东西啊。
我在数据库里保存的是相对路径,不是物理路径啊 那怎样才能访问到这个图片呢[/quote] 要看你发布后的这个文件在哪。 首先,找到你的发布文件夹。 1 可能发布文件夹压根没有这个图片,这个和发布时你是怎么添加这个图片的有关系。 2 发布后的文件夹如果存在图片,那么你要比对路径是不是你上图访问的那样。
yaotomo 2018-05-22
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
你的iis站点路径根目录是映射在Web这个物理文件夹下吗?
在哪里看这个根路径映射?
yaotomo 2018-05-22
  • 打赏
  • 举报
回复
引用 3 楼 hanjun0612 的回复:
404是没有找到这个资源。 你发出来的是你的物理路径, 但是iis访问的是发布后的虚拟路径。不是一个东西啊。
我在数据库里保存的是相对路径,不是物理路径啊 那怎样才能访问到这个图片呢
yaotomo 2018-05-22
  • 打赏
  • 举报
回复
引用 1 楼 u012142699 的回复:
第13行是关键点。

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

        //该值指示 ASP.NET 路由操作是否应处理与现有文件匹配的 URL
        routes.RouteExistingFiles = true;
    }
}
谢谢回复。在网上查了一下,好像该用这个。但是我设置了不管用,而且加上后网站的一些样式也发生了变化?
正怒月神 版主 2018-05-22
  • 打赏
  • 举报
回复
404是没有找到这个资源。 你发出来的是你的物理路径, 但是iis访问的是发布后的虚拟路径。不是一个东西啊。
  • 打赏
  • 举报
回复
你的iis站点路径根目录是映射在Web这个物理文件夹下吗?
  • 打赏
  • 举报
回复
第13行是关键点。

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

        //该值指示 ASP.NET 路由操作是否应处理与现有文件匹配的 URL
        routes.RouteExistingFiles = true;
    }
}

62,236

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧