.NetCore 目录浏览 和 静态文件
1. 静态文件
包:microsoft.aspdotnet.staticfiles
app.UseStaticFiles() 会默认找到 wwwroot文件夹
// 匹配到指定条件然后执行中间件
// 使用中间件
// 静态文件
// UseStaticFiles 中间件
app.UseStaticFiles(); // 使用默认文件 去找到 wwwroot 文件夹
// 自定义静态文件路径
var otherDirectory = Path.Combine(Directory.GetCurrentDirectory(), "otherFiles");
app.UseStaticFiles(new StaticFileOptions()
{
// 物理地址
FileProvider = new PhysicalFileProvider(otherDirectory),
// 指定访问地址 IP/other/test/index.html
RequestPath = new PathString(("/other"))
});
2. 目录浏览
// 目录浏览 允许网站用户查看指定目录下的目录和文件列表
// 基于安全考虑,默认情况下禁用目录访问功能
// 开启目录浏览功能 当访问 files 的时候 会把otherFiles目录列出来
app.UseDirectoryBrowser(new DirectoryBrowserOptions()
{
// 文件提供程序
FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "otherFiles")),
/// 指定请求地址
RequestPath = new PathString("/files")
});
3. 默认文件
设置默认页给站点每个访问者提供一个起始页,避免用户输入完整的ULR
在 startup.Configure中调用 UseDefaultFiles() 扩展方法
UseDefaultFiles 必须在 UseStaticFiles() 之前使用
UseDefaultFIles 只是重写了URL 不是真的提供了这样的一个文件
因此还必须开启静态文件中间件, UseStatusFIles 来提供这个文件
通过UseDeaultFiles 请求文件夹的时候检索一下文件:default.html index.html
列表中第一个被找到的文件将返回给用户,作为该完整的ULR请求的响应,而此时的浏览器的URL将继续显示用户输入的URL
自定义默认页名称
初始化默认页设置选项
var option = enw DefaultFIlesOption();
清空默认文件名列表
options.DefaultFileNames.Clear();
向默认页列表中添加自定义的文件名
options.DefaultFileNames.Add("asdfd.html");
应用默认文件设置
app.UseDefaultFiles(options);
启用静态文件
app.UseStaticFiles();
是否将html文件解析 默认是解析的 如何设置不解析 直接打印出内容
var provider = new FileExtensionContentTypeProvider();
provider.Mappings.Clear();
provider.Mappings[".html"] = "text/plain"; // 正常文件的形式打印出来
provider.Mappings[".abc"] = "text/html"; // 遇到 abc 文件以 html 格式文件输出
.NetCore 目录浏览 和 静态文件的更多相关文章
- MVC项目中,如何访问Views目录下的静态文件!
<!--注意,是system.webServer节点,而非system.web--><system.webServer> <handlers> <add na ...
- IIS目录浏览模式打开文件还是无法下载
写在前面的话 IIS已经设置目录浏览启用,且可以正常访问到文件,说明这些设置没问题,但是点击文件进行下载时,却提示无法下载,文件不存在等等,有的又可以,一顿操作后发现,原来是文件类型没有包含在MIME ...
- vue@cli3 项目模板怎么使用public目录下的静态文件,找了好久都不对,郁闷!
作为图片最好放在static目录下,但是vue@cli3没有static,网上都说放在public目录下,行,那就放吧,可问题是图片放了怎么使用 第一次尝试 肯定用绝对路径这就不说了,用相对路径,we ...
- ASP.NET5 中静态文件的各种使用方式
所谓静态文件,包含HTML文件,css文件.图片文件和js文件等,他们是服务器直接读取到客户端的一些资源,在这篇文章中,我们将解释关于ASP.NET5和静态文件的一些内容. 服务端的静态文件 默认情况 ...
- ASP.NET Core 中文文档 第三章 原理(3)静态文件处理
原文:Working with Static Files 作者:Rick Anderson 翻译:刘怡(AlexLEWIS) 校对:谢炀(kiler398).许登洋(Seay).孟帅洋(书缘) 静态文 ...
- ASP.NET5 静态文件
静态文件,包括HTML文件,CSS文件,图像文件和JavaScript文件,它是一个应用里所包含的资源. 1. 提供静态文件 默认的,静态文件存储在你的webroot目录下面,webroot的路径定义 ...
- 这样入门asp.net core 之 静态文件
本文章主要说明asp.net core中静态资源处理方案: 一.静态文件服务 首先明确contentRoot和webroot这两个概念 contentRoot:web的项目文件夹,其中包含webroo ...
- ASP.NET Core 2.1 : 十四.静态文件与访问授权、防盗链
我的网站的图片不想被公开浏览.下载.盗链怎么办?本文主要通过解读一下ASP.NET Core对于静态文件的处理方式的相关源码,来看一下为什么是wwwroot文件夹,如何修改或新增一个静态文件夹,为什么 ...
- Asp .Net core 2 学习笔记(3) —— 静态文件
这个系列的初衷是便于自己总结与回顾,把笔记本上面的东西转移到这里,态度不由得谨慎许多,下面是我参考的资源: ASP.NET Core 中文文档目录 官方文档 记在这里的东西我会不断的完善丰满,对于文章 ...
- ASP.NET Core 2 学习笔记(五)静态文件
之前的ASP.NET网站,只要把*.html.*.css.*.jpg.*.png.*.js等静态文件放在项目根目录,默认都可以直接被浏览:但ASP.NET Core 小改了浏览静态文件的方式,默认根目 ...
随机推荐
- adb shell 批处理文件
adb shell 批处理文件 手机截屏,并把图片传到电脑
- 利用Curl命令来发邮件的小工具
一个利用curl来发送邮件的小工具 其实可以扩展出很多其它玩法 例如: 配合系统定时任务做系统状态监控,当满足一定条件自动发送邮件 或者和笔者一样,每次加班后懒得编辑邮件,就可以直接传入相应的参数来发 ...
- 【Zookeeper】Re03 集群搭建
我这里采用的是模拟真实情况: 部署三台虚拟机Centos7 192.168.242.101 192.168.242.102 192.168.242.103 每台机器都安装Zookeeper且一致: / ...
- 【ECharts】01 快速上手
简单介绍: ECharts 是一个使用 JavaScript 实现的开源可视化库,涵盖各行业图表,满足各种需求. ECharts 遵循 Apache-2.0 开源协议,免费商用. ECharts 兼容 ...
- tensorflow/pytorch/mindspore在VGG16前向传播上的性能对比
首先说下mindspore,作为华为的主打软件产品,该计算框架可用性一直较差,不同版本不同计算硬件下的代码往往都不是完全兼容的,也就是说你在mindspore的官网上找到的VGG预训练模型的代码是mi ...
- .NET电子邮件高效处理解决方案
前言 在日常软件开发中,电子邮件处理是一个不可或缺的功能,无论是用户注册验证.通知推送还是日常的业务沟通,都离不开电子邮件的支持.今天大姚给大家分享2款.NET开源.高效.强大的.NET电子邮件处理库 ...
- Linux系统中目录和文件夹是一个东西吗
目录和文件夹的区别 在阐述Linux系统的目录前,我们先来回忆一下现实中的目录和文件夹是什么: 在现实中,文件夹(封套)可以用来保存几个文件(或其他项目).而目录则可以用来维护项目的索引,这样 ...
- BossPlayersCTF靶机笔记
BossPlayersCTF靶机 靶机概述 这是vulnhub上的一个简单的linux靶机,适合初级渗透测试人员,同时也告诉我们在渗透测试过程中要有耐心,要允许有兔子洞. 靶机整体思路: 主机端口探测 ...
- nginx配置web服务|反向代理|负载均衡
目录 http模块 server模块(虚拟主机配置) location模块 基本语法 匹配类型 等号匹配(=) 正则匹配(~) 忽略大小写的正则匹配(~*) 常见指令 嵌套 location 反向代理 ...
- 通过JMX监控weblogic服务
一.JMX简介 JMX是一种JAVA的正式规范,它主要目的是让程序有被管理的功能,那么怎么理解所谓的"被管理"呢?试想你开发了一个软件(如WEB网站),它是在24小时不间断运行的, ...