.NET Core下的文件文档服务
来源:互联网 发布:如何提高淘宝店信誉 编辑:程序博客网 时间:2024/06/05 08:14
.NET Core下的文件文档服务
默认文档服务
设置默认首页可以给网站的每个访问者提供一个起始页。
为使站点能提供默认页,避免用户输入完整 URI,须在 Startup.Configure 中调用 UseDefaultFiles 扩展方法。
//举个栗子,设置默认页mydefaultpublic void Configure(IApplicationBuilder app){ DefaultFilesOptions options = new DefaultFilesOptions(); options.DefaultFileNames.Clear(); options.DefaultFileNames.Add("mydefault.html"); app.UseDefaultFiles(options); app.UseStaticFiles();}
注意:UseDefaultFiles 必须在 UseStaticFiles 之前调用。UseDefaultFiles 只是重写了URL,并没有真的提供这样一个文件。所以你必须开启静态文件中间件(UseStaticFiles)来提供这个文件。
UseFileServer
UseFileServer包含了 UseStaticFiles 、UseDefaultFiles 和 UseDirectoryBrowser 的功能。
以下代码启用了静态文件和默认文件,但不允许直接访问目录。
app.UseFileServer();
下面的代码启用了静态文件、默认文件和目录浏览功能。
app.UseFileServer(enableDirectoryBrowsing: true);
警告:接提供目录浏览功能是有很大的安全风险的,如果想让特定的文件可以被浏览,那么需要设置一个FileServerOptions对象传递给UseFileServer。
//path.Combine(),将2个字符串合成一个路径,该路径作为可以被浏览的路径;RequestPath为请求时在地址栏中输入的路径,该路径映射到FileProvider中设置的实际路径public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory){ app.UseStaticFiles(); app.UseFileServer(new FileServerOptions() { FileProvider = new PhysicalFileProvider( Path.Combine(Directory.GetCurrentDirectory(), @"MyStaticFiles")), RequestPath = new PathString("/StaticFiles"), EnableDirectoryBrowsing = true }); }public void ConfigureServices(IServiceCollection services){ services.AddDirectoryBrowser();}
如果在 MyStaticFiles 目录下没有默认命名的文件,则请求http://< app>/StaticFiles 将会得到MyStaticFiles的目录。
总结
ASP.NET 静态文件中间件能够支持超过 400 种已知文件内容类型。如果用户请求一个未知的文件类型,静态文件中间件将返回 HTTP 404(未找到)响应。如果启用目录浏览,该文件的链接将会被显示,但 URI 会返回一个 HTTP 404 错误。
UseDirectoryBrowser 和 UseStaticFiles 可能会泄密。最好不要在生产环境开启目录浏览。要小心那些开启了UseStaticFiles或 UseDirectoryBrowser 的目录(使得其子目录都可被访问)。最好将公开的内容放在像wwwroot 这样的目录中,远离应用程序视图、配置文件等。
- .NET Core下的文件文档服务
- .net core官方文档
- .net core注入服务
- LINUX 下的core文件
- linux下的core文件
- linux下的core文件
- Linux下的Core文件
- linux下的core 文件
- Liunx下的core文件
- .NET Core下使用gRpc公开服务(SSL/TLS)
- .NET Core下使用gRpc公开服务(SSL/TLS)
- 在ASP.NET Core Web API 项目里无法访问(wwwroot)下的文件
- 改造独立部署(SCD)模式下.NET Core应用程序 dotnet的exe文件启动过程
- .net core 文件上传
- UNIX下core文件的分析
- 修改linux下core文件的路径
- Linux下调试core文件的方法
- Linux下core文件的演示分析
- 《程序员的修炼之道》笔记——1、我的源码让猫吃了
- 辗转相除法, 又名欧几里德算法(Euclidean algorithm)
- 开始的时候,兴趣,很重要!
- 朴素贝叶斯分类算法(Naive Bayesian classification)
- Android TextView的跑马灯效果以及TextView的一些属性
- .NET Core下的文件文档服务
- groovy map集合使用
- hdu 2082 找单词【多重背包可行性 || 母函数】
- H5图片上传预览、裁剪功能
- Javascript报uncaught typeerror illegal invocation错误
- BaseActivity
- Java学习笔记之Hibernate-Hibernate入门和单表增删改查
- 集合、泛型简单练习
- CodeForces 528 D.Fuzzy Search(FFT)