将 asp.net 个捆绑包列入白名单

Whitelisting asp.net bundles

IIS 有一个默认的文件类型黑名单,这些文件类型不会提供给其站点的用户,其中一些类型是:.asax、.cs、.vb、.config。 您可以在 功能视图 下的 请求过滤 下找到该设置。

我执行了 powershell 查询以查找我网站中的所有文件类型,并仅将我希望 IIS 提供服务的文件类型列入白名单:

Get-Childitem . | WHERE { -NOT $_.PSIsContainer } | Group Extension -NoElement | Sort Count -Desc > FileExtensions.txt

现在网站可以完美且安全地运行,直到我启用 ASP.Net 捆绑。 404 将出现在捆绑的样式和脚本上,因为它们未列入白名单。

现在的问题是:我可以将捆绑文件列入白名单吗?应该将什么扩展名添加到 IIS 中的 Allowed Extensions 列表中?

是的,你可以 ;-)。 只需将正确的扩展名添加到包名称即可。

例如:~/Bundles/Styles => ~/Bundles/Styles.css

更改 RegisterBundles() 方法和 Styles.Render(),您就完成了