【问题标题】:"forbidden error" when trying to access the bundled slick.css file in ASP.Net尝试访问 ASP.Net 中捆绑的 slick.css 文件时出现“禁止错误”
【发布时间】:2020-12-03 04:45:58
【问题描述】:

我在我的 ASP.Net MVC 项目中使用 slick-carousel。如果我通过HTML中的普通<link>标签链接slick.css文件,它工作正常。但是如果我捆绑slick.css文件并用Html渲染它,它会显示禁止错误(403)。

工作解决方案

<link rel="stylesheet" type="text/css" href="~/Content/Slick/slick.css" />
<link rel="stylesheet" type="text/css" href="~/Content/Slick/slick-theme.css" />

打包文件

bundles.Add(new StyleBundle("~/Content/Slick").Include(
                    "~/Content/Slick/slick.css"));

bundles.Add(new StyleBundle("~/Content/SlickTheme").Include(
                    "~/Content/Slick/slick-theme.css"));

引用捆绑的文件

@Styles.Render("~/Content/Slick")
@Styles.Render("~/Content/SlickTheme")

谁能告诉我为什么我只有在捆绑时才会收到这样的错误?

【问题讨论】:

  • 尝试在Slick之前使用SlickTheme的引用
  • @Sh.Imran :我更改了订单,但问题仍然存在。
  • @Archana 你找到解决方案了吗?我也面临着同样的问题……

标签: c# asp.net asp.net-mvc-4 slick.js bundling-and-minification


【解决方案1】:

这不是 slick 特定的问题,但 slick 的 NuGet 安装的文件夹结构引发了它。

如果捆绑包名称与 Web 应用程序中真正存在的文件夹匹配,则会出现问题,因为这样请求就不会被识别为对捆绑包的访问,而是对未被授予的文件夹的访问。如您在我的示例中所见,包的命名方案与文件夹匹配。

 bundles.Add(new StyleBundle("~/Content/slick").Include("~/Content/Slick/slick.css"));

按照此处所示更改包名称(当然还有参考)后,它就可以工作了

 bundles.Add(new StyleBundle("~/Content/slickstyle").Include("~/Content/Slick/slick.css"));

【讨论】:

  • 您的解决方案对我有用,谢谢!
猜你喜欢
  • 2016-10-22
  • 2014-08-21
  • 1970-01-01
  • 2021-05-25
  • 1970-01-01
  • 2015-09-14
  • 2020-02-17
  • 2013-03-02
  • 1970-01-01
相关资源
最近更新 更多