首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Asp.Net Core静态文件-12

目录 本文出自《从零开始学 ASP.NET CORE MVC》目录 推荐文章:配置 ASP.NET Core 请求(Request)处理管道 Asp.Net Core 静态文件 在这个视频我们将讨论如何使...ASP.NET Core 应用程序,支持静态文件,如 HTML,图像,CSS 和 JavaScript 文件。...静态文件 默认情况下,Asp.Net Core 应用程序不会提供静态文件静态文件默认目录是wwwroot,此目录必须位于项目文件根目录。 将图片复制并粘贴到 wwwroot 文件。...; }); } 在wwwroot文件没有像 vs 提供默认模板一样把图片、CSS 和 JavaScript 文件进行分类,我们建议将不同文件类型进行文件夹区分,参考下图文件夹层次结构 :...提供 wwwroot 文件夹之外静态文件 默认情况下,UseStaticFiles()中间件仅提供 wwwroot 文件静态文件

1.4K30

asp.net core 系列之静态文件

这篇讲解asp.net core静态文件(大致翻译于官网)。 静态文件,例如HTML,CSS, images和JavaScript. 要想直接被客户端访问,需要做一些配置。...如果是.NET Core, Microsoft.AspNetCore.App包含这个包。 配置中间件来允许提供静态文件服务。...允许目录浏览一些安全风险,可以看 Considerations 注意下面示例两个UseStaticFiles调用。 第一个调用允许wwwroot文件夹提供静态文件。...例如,Windows是大小写敏感,macOS和Linux不是。 ASP.NET Core 应用部署在IIS上,使用ASP.NET Core Module 来发送所有的请求到应用,包括静态文件请求。...IIS文件处理器被允许并且ASP.NET Core Module没有被正确配置,静态文件会提供服务。

1.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

细说ASP.NET Core静态文件缓存方式

本文指在这三个方面,在ASP.NET Core静态文件实现过程和使用方法进行阐述。当然也可以考虑使用反向代理方式(例如IIS或Nginx),这些不是本文讨论内容。   ...下面我们看看文件缓存在ASP.NET Core是如何判断缓存失效?.NET Core开源代码为我们提供了了解它入口【代码 Source Code】。...在ASP.NET CoreTag Hepers为我们提供了这样API: ...ASP.NET Core源代码我们来看看是怎么计算文件变化:【源代码 Source Code】 。  三、ASP.NET Core与CDN?   ...我们在使用CDN时,因为还要进行开发任务,一般我们都要有两套地址,一套是CDN上文件地址,一套是本地调试开发用地址。ASP.NET Core也为我们提供了Tag Helper来解决这样问题。

2.3K20

ASP.NET Core 捆绑和缩小静态资产

ASP.NET Core 捆绑和缩小静态资产 ASP.NET Core 捆绑和缩小静态资产 什么是捆绑和缩小 捆绑 缩小 捆绑和缩小影响 选择捆绑和缩小策略 配置捆绑和缩小 向工作流添加文件...Core 3.x 入门视频(完结)第三节ASP.NET视频教程,里面提到到ASP.NET Core 捆绑和缩小静态资产,可以在微软官方文档 ASP.NET Core 捆绑和缩小静态资产,特此记录一下...ASP.NET Core 捆绑和缩小静态资产 2020/09/02 作者:Scott Addie 和 David Pine 本文介绍应用捆绑和缩小好处,包括如何在 ASP.NET Core Web...什么是捆绑和缩小 捆绑和缩小是可以在 Web 应用应用两个不同性能优化。 捆绑和缩小一起使用,可减少服务器请求数并减小请求静态资产大小,从而提高性能。...在 ASP.NET Core 2.1 或更高版本,将名为 bundleconfig.json 新 JSON 文件添加到 MVC 或 Razor Pages 项目根目录。

4K20

ASP.NET Core应用针对静态文件请求处理: 以Web形式发布静态文件

虽然ASP.NET Core是一款“动态”Web服务端框架,但是在很多情况下都需要处理针对静态文件请求,最为常见就是这对JavaScript脚本文件、CSS样式文件和图片文件请求。...针对不同格式静态文件请求处理,ASP.NET Core为我们提供了三个中间件,它们将是本系列文章论述重点。...不过在针对对它们展开介绍之前,我们照理通过一些简单实例来体验一下如何在一个ASP.NET Core应用中发布静态文件。...我们知道ASP.NET Core应用具有两个重要根目录,它们分别是ContentRoot和WebRoot,后者也是对外发布静态文件默认使用根目录。...我们知道ASP.NET Core应用大部分情况下都是利用一个FileProvider对象来读取文件,它在处理针对静态文件请求是也不例外。

1.3K50

ASP.NET Core静态文件中间件: DirectoryBrowserMiddleware & DefaultFilesMiddleware

对于NuGet包由“Microsoft.AspNetCore.StaticFiles”提供3个中间件来说,StaticFileMiddleware中间件旨在处理针对具体静态文件请求,其他两个中间件(...,就是将目录下内容(文件和子目录)格式化成一种可读形式响应给客户端。...如果直接请求就是这个默认文件,那么前面介绍StaticFileMiddleware中间件就会将这个文件响应给客户端。如果能够将针对目录请求重定向到这个默认文件上,一切问题就会迎刃而解。...如果当前目录下存在某个默认文件,那么它会将当前请求URL修改成指向这个默认文件URL。...静态文件中间件[1]: 搭建文件服务器 静态文件中间件[2]: 条件请求以提升性能 静态文件中间件[3]: 区间请求以提供部分内容 静态文件中间件[4]: StaticFileMiddleware 静态文件中间件

65231

ASP.NET Core使用静态文件、目录游览与MIME类型管理

前言 今天我们来了解了解ASP.NET Core静态文件处理方式. 以前我们寄宿在IIS时候,很多静态文件过滤 和相关安全措施 都已经帮我们处理好了....ASP.NET Core则不同,因为是跨平台,解耦了IIS,所以这些工作 我们可以在管道代码处理....正文 在我们Web程序开发,肯定要提供很多静态文件(比如:JS,CSS)给客户端下载使用.所以我们先来看看ASP.NET Core是怎么处理....这样,我们就可以根据需求来配置自己静态文件缓存和其他响应头信息. 2.启用静态文件目录浏览 开启静态文件目录浏览..其实是一件安全性级低事情,不管是传统asp.net还是asp.net core...下面我们就来讲讲如何在asp.net core 启用我们静态文件目录游览 开启静态文件目录游览需要使用UseDirectoryBrowser来注入配置,代码如下: app.UseDirectoryBrowser

1.7K100

ASP.NET Core 2.1 : 十四.静态文件与访问授权、防盗链

本文主要通过解读一下ASP.NET Core对于静态文件处理方式相关源码,来看一下为什么是wwwroot文件夹,如何修改或新增一个静态文件夹,为什么新增文件夹名字不会被当做controller处理...一、静态文件夹 所谓静态文件,直观说就是wwwroot目录下一些直接提供给访问者文件,例如css,图片、js文件等。...; }); } 三、新增静态文件目录 除了这个默认wwwroot目录,需要新增一个目录来作为静态文件目录,可以Startup文件 app.UseStaticFiles...“NewFilesPath”文件夹,将它也设置问静态文件目录, 而这个目录访问路径为"/NewFiles"。...五、静态文件授权管理 默认情况下,静态文件是不需要授权,可以公开访问

1.2K20

ASP.NET Core静态文件中间件: 搭建文件服务器

虽然ASP.NET Core是一款“动态”Web服务端框架,但是由它接收并处理大部分是针对静态文件请求,最常见是开发Web站点使用3种静态文件(JavaScript脚本、CSS样式和图片)。...ASP.NET Core提供了3个中间件来处理针对静态文件请求,利用它们不仅可以将物理文件发布为可以通过HTTP请求获取Web资源,还可以将所在物理目录结构呈现出来。...通过HTTP请求获取Web资源大部分来源于存储在服务器磁盘上静态文件。对于ASP.NET Core应用来说,如果将静态文件存储到约定目录下,绝大部分文件类型都是可以通过Web形式对外发布。...ASP.NET Core应用在大部分情况下都是利用一个IFileProvider对象来读取文件针对静态文件读取请求也不例外。...Core静态文件中间件[1]: 搭建文件服务器 ASP.NET Core静态文件中间件[2]: 条件请求 & 区间请求 ASP.NET Core静态文件中间件[3]: StaticFileMiddleware

1.3K21

ASP.NET Core静态文件中间件: 条件请求以提升性能

[更多关于ASP.NET Core文章请点这里] 目录 一、HTTP条件请求 二、默认响应 三、If-Modified-Since & If-None-Match 四、If-Unmodified-Since...& If-Match 一、HTTP条件请求 HTTP条件请求作为一项标准记录在HTTP规范。...假设我们在ASP.NET Core应用中发布了一个文本文件(foobar.txt),内容为“abcdefghijklmnopqrstuvwxyz0123456789”(26个字母+10个数字),目标地址为...在这种情况下,最初状态码为“200 OK”响应会再次被返回,具体请求和对应响应体现在如下所示代码片段。...[1]: 搭建文件服务器 静态文件中间件[2]: 条件请求以提升性能 静态文件中间件[3]: 区间请求以提供部分内容 静态文件中间件[4]: StaticFileMiddleware 静态文件中间件[5

57851

ASP.NET Core应用针对静态文件请求处理: 条件请求与区间请求

目录 一、条件请求     HTTP条件请求     针对静态文件条件请求 二、 区间请求     HTTP区间请求     针对静态文件区间请求 一、条件请求 所谓条件请求就是客户端在发送GET...针对静态文件条件请求 接下来我们通过实例演示形式来介绍StaticFileMiddleware中间件在针对条件请求方面做了些什么。...假设我们在ASP.NET Core应用中发布一个文本文件(foobar.txt),内容为“abcdefghijklmnopqrstuvwxyz0123456789”(26个字母+10个数字),目标地址为...针对静态文件区间请求 接下来我们照理从HTTP请求和响应报文角度来探讨StaticFileMiddleware中间件针对区间请求支持。...在如下所示这两个请求,我们分别将一个基准时间戳和文件签名作为这个报头值,很明显服务端针对这两个报头值都将做出“文件已经更新”判断。

3K50

ASP.NET Core静态文件中间件: StaticFileMiddleware 中间件全解析

StaticFileMiddleware中间件针对静态文件请求处理并不仅限于完成文件内容响应,它还需要为目标文件提供正确媒体类型。...常用数百种标准文件扩展名和对应媒体类型之间映射关系都会保存在这个字典。...这两个默认值分别解释了两个问题:为什么请求静态文件将WebRoot作为默认根目录,为什么目标文件扩展名会决定响应媒体类型。...SendResponseAsync方法实现,这个方法会设置相应响应报头和状态码,如果需要,它还会将目标文件内容写入响应报文主体。...[1]: 搭建文件服务器 静态文件中间件[2]: 条件请求以提升性能 静态文件中间件[3]: 区间请求以提供部分内容 静态文件中间件[4]: StaticFileMiddleware 静态文件中间件[5

1.6K21

ASP.NET Core ServiceProvider

前言# 在 ASP.NET Core ,微软提供了一套默认依赖注入实现,该实现对应包为:Microsoft.Extensions.DependencyInjection,我们可以通过查看其对应开源仓库看一下它具体实现...基于该实现,我们不必显式创建我们服务对象,可以将其统一注入到 ServiceProvider 中进行集中维护,使用时候直接在该对象获取即可。让我们在编写业务逻辑时,不用太关注对象创建和销毁。...这也是为什么现在有些最佳实践建议不要过多使用 New 方式来获取对象。在本文中,我们将一起了解一下如何实现一个自己 ServiceProvider。...,我们需要引入一个新集合,这个新集合是用于存储我们相应实例对象,在注册时候我们只记录注册类型,在需要访问到相应服务时,我们只需要在这个实例集合列表访问,如果发现我们需要服务还未被实例化,那我们再进行实例化...,这和 DotNetCore ServiceProvider 方式很相似,它不依赖于我们服务注册顺序,都能正常进行构造。

1.8K20

ASP.NET Core 管道机制

前言 在开始之前,我们需要明确一个概念是,在 Web 程序,用户每次请求流程都是线性,放在 ASP.NET Core 程序,都会对应一个 请求管道(request pipeline),在这个请求管道...在 ASP.NET Core ,管道式编程是一个核心且基础概念,它很多中间件都是通过 管道式 方式来最终配置到请求管道,所以理解这里面的管道式编程对我们编写更加健壮 DotNetCore...下面,我们尝试着来一步步解析 ASP.NET Core 管道机制。...源码分析 由于 ASP.NET Core 是完全开源跨平台,所以我们可以很容易在 Github 上找到其对应托管仓库。最后,我们可以看一下 ASP.NET Core 官方一些实现代码。...上述所有内容就是我个人对 ASP.NET Core 管道式编程一些理解和拙见,如果有不正确或不当地方,还请斧正。 望共勉!

1.2K10

ASP.NET Core 管道机制

前言 在开始之前,我们需要明确一个概念是,在 Web 程序,用户每次请求流程都是线性,放在 ASP.NET Core 程序,都会对应一个 请求管道(request pipeline),在这个请求管道...在 ASP.NET Core ,管道式编程是一个核心且基础概念,它很多中间件都是通过 管道式 方式来最终配置到请求管道,所以理解这里面的管道式编程对我们编写更加健壮 DotNetCore...下面,我们尝试着来一步步解析 ASP.NET Core 管道机制。...源码分析 由于 ASP.NET Core 是完全开源跨平台,所以我们可以很容易在 Github 上找到其对应托管仓库。最后,我们可以看一下 ASP.NET Core 官方一些实现代码。...上述所有内容就是我个人对 ASP.NET Core 管道式编程一些理解和拙见,如果有不正确或不当地方,还请斧正。 望共勉!

1.1K10

asp.net core 系列】14 .net core IOC

IOC描述是一种设计模式,而DI是一种行为。 2. 使用asp.net core默认IOC 在之前ASP.NET 框架,微软并没有提供默认IOC支持。...在最新asp.net core微软提供了一套IOC支持,该支持在命名空间: Microsoft.Extensions.DependencyInjection 里,在代码引用即可。...asp.net core如果使用依赖注入的话,需要在Startup方法设置,具体内容可以参照以下: public void ConfigureServices(IServiceCollection services...因为asp.net core 版本3更改了一些逻辑,AutoFac引用方式发生了改变,现在不介绍之前版本内容,以3为主。...总结 这一篇简单介绍了如何在Asp.net Core启用IOC支持,并提供了两种方式,可以说是各有优劣。小伙伴们根据自己需要选择。后续会为大家详细深入AutoFac之类IOC框架核心秘密。

1.2K20

ASP.NET Core静态文件中间件: 区间请求以提供部分内容

大部分针对物理文件请求都希望获取整个文件内容,区间请求则与之相反,它希望获取某个文件部分区间内容。区间请求可以通过多次请求来获取某个较大文件全部内容,并实现断点续传。...只有在判断资源并未发生变化前提下,服务端才会返回指定区间内容。 针对静态文件区间请求 下面从HTTP请求和响应报文角度来探讨StaticFileMiddleware中间件针对区间请求支持。...我们依然沿用前面演示条件请求实例,该实例作为目标文件foobar.txt包含26个字母和10个数字,加上UTF文本文件初始3个字符(EF、BB、BF),所以总长度为39。...在如下所示这两个请求,我们分别将一个基准时间戳和文件标签作为这个报头值,显然服务端针对这两个报头值都将做出“文件已经更新”判断。...[1]: 搭建文件服务器 静态文件中间件[2]: 条件请求以提升性能 静态文件中间件[3]: 区间请求以提供部分内容 静态文件中间件[4]: StaticFileMiddleware 静态文件中间件[5

57221
领券