Asp.net 让其他后缀名、扩展名文件像aspx页面一样被解析
2017-07-05 00:00
405 查看
摘要: 用asp.net网站模拟其他网站时,会遇到文件后缀名不同的问题,例如:.json,.jsonp,.php等,如果只是静态的文件倒没什么,如果是动态的就麻烦了,因为asp.net默认只解析aspx
2) 方法二:在IIS管理器中打开"MIME类型",查看有没有.jsonp扩展名,如果没有,添加.jsonp扩展名。MIME类型中设置以后,现在可以通过浏览器访问到.jsonp扩展名的文件了,但是只是作为静态页面获取,文件中的asp代码不会被解析。
2) 方法二:在IIS管理器中打开“处理程序映射”功能,运行“添加托管处理程序”,请求路径中输入*.jsonp,类型中输入System.Web.UI.PageHandlerFactory,名称自己定。
做完以上3步就可以实现非aspx扩展名也可以按asp页面进行解析了。
PS. 页面代码中如果不包含Html标签对页面编码进行说明,可能会有乱码问题,可以通过设置进行处理:在Web.config中configuration->system.web标签下添加配置
一. 目标
假设添加 .jsonp后缀名,让该后缀名文件和aspx页面一样被解析二. 实现步骤
1. 让IIS辨认文件扩展名
1) 方法一:修改Web.config,在configuration->system.webServer标签下加入<staticContent> <mimeMap fileExtension=".jsonp" mimeType="application/javascript" /> </staticContent>
2) 方法二:在IIS管理器中打开"MIME类型",查看有没有.jsonp扩展名,如果没有,添加.jsonp扩展名。MIME类型中设置以后,现在可以通过浏览器访问到.jsonp扩展名的文件了,但是只是作为静态页面获取,文件中的asp代码不会被解析。
2. 增加BuildProvider
在Web.config中configuration->system.web->compilation标签下增加<buildProviders> <add extension=".jsonp" type="System.Web.Compilation.PageBuildProvider"/> </buildProviders>
3. 增加处理程序映射
1) 方法一:在Web.config中configuration->system.webServer标签下增加<handlers> <add name="JsonpAsp-Integrated-4.0" path="*.jsonp" verb="*" type="System.Web.UI.PageHandlerFactory" resourceType="Unspecified" preCondition="integratedMode" /> </handlers>
2) 方法二:在IIS管理器中打开“处理程序映射”功能,运行“添加托管处理程序”,请求路径中输入*.jsonp,类型中输入System.Web.UI.PageHandlerFactory,名称自己定。
做完以上3步就可以实现非aspx扩展名也可以按asp页面进行解析了。
PS. 页面代码中如果不包含Html标签对页面编码进行说明,可能会有乱码问题,可以通过设置进行处理:在Web.config中configuration->system.web标签下添加配置
<globalization fileEncoding="utf-8" />
相关文章推荐
- ASP.NET使aspx页面能接受HTML,asp的页面传送的文件
- 在asp.net页面的aspx文件中插入代码段
- HTML控件ID和NAME属性的区别,以及如何在asp.net页面的.CS文件中获得.ASPX页面中HTML控件的值
- HTML控件ID和NAME属性的区别,以及如何在asp.net页面的.CS文件中获得.ASPX页面中HTML控件的值(转载)
- IIS WEB服务扩展里没有ASP.NET v2.0导致无法正常浏览.ASPX文件
- ASP.NET 后台.cs文件执行.aspx页面的javascript方法
- asp.net 网站模板怎么用,就是16aspx上面下下来的模板,里面有个sln文件,其他全是文件夹的东西
- HTML控件ID和NAME属性的区别,以及如何在asp.net页面的.CS文件中获得.ASPX页面中HTML控件的值
- 【原】asp.net导出word,结果导出aspx页面文件的问题
- HTML控件ID和NAME属性的区别,以及如何在asp.net页面的.CS文件中获得.ASPX页面中HTML控件的值
- ASP.NET使aspx页面能接受HTML,asp的页面传送的文件
- ASP.NET的页面中对其他文件的引用
- ASP.NET使aspx页面能接受HTML,asp的页面传送的文件
- asp.net 将HTML文件当ASPX文件解析
- ASP.NET的页面中对其他文件的引用
- 详解ASP.NET页面的aspx扩展
- Asp.Net底层解析(三)——ASPX页面的生命周期详解
- C#编译器优化那点事 c# 如果一个对象的值为null,那么它调用扩展方法时为甚么不报错 webAPI 控制器(Controller)太多怎么办? .NET MVC项目设置包含Areas中的页面为默认启动页 (五)Net Core使用静态文件 学习ASP.NET Core Razor 编程系列八——并发处理
- 有些疑惑,一个普通的aspx页面的文件,IIS怎么知道改用 asp.net1.1还是 2.0来解释呢?