修改服务器配置 让asp.net文件后缀名随心所欲

有的网站出于各种各样的原因,在IIS中修改了动态页面的默认后缀,asp时代就有人在服务器上修改配置,把html后缀的文件当作asp文件来解析:也就是说,asp程序(后缀为.asp)可以保存为一个.htm后缀的文件放到服务器上WEB目录下,而服务器照样将之当作asp程序来解释处理,生成结果。这样对访问者来说,还以为网站全是html页面,而且经常更新呢(感觉没什么必要是吗?错了,最起码的一个好处:搜索引擎可是优先收录html页面哦,这样的话站点将很容易被人在搜索引擎中搜索到)

服务器上修改解析asp文件的后缀很容易,在IIS服务管理器 -> 站点属性 -> 主目录 -> 配置 -> 应用程序映射中进行修改即可。如果有配置服务器支持PHP的经验,那就更清楚怎么回事了。

可是对asp.net就不行了,同样的办法,修改应用程序映射后,仍然没有得到预期的结果,文件什么内容,返回的就是什么内容,而不是当作asp.net程序来处理了。

其实主要是还差一点点,那就是没有在web.config文件或C:\windows\microsoft.net\frameworl\v1.1.4322\config\machine.config(windows2003下的路径,不同的操作系统路径稍有不同)中配置特定后缀的文件的HTTP处理程序,配置步骤(假设我们要增加一个映射,将后缀为.aaa的文件当作.aspx页面来处理。):

先在IIS服务管理器中停掉internet信息服务(不停掉没办法保存修改的),然后用记事本打开C:\windows\microsoft.net\frameworl\v1.1.4322\config\machine.config,查找"*.aspx",能找到这么一行:

本文相关代码如下:
<add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory"/>

.aspx文件的解析就是这么配置的,同样的道理,我们只要再增加一行,将其中的*.aspx改为*.aaa就行了:

本文相关代码如下:
<add verb="*" path="*.aaa" type="System.Web.UI.PageHandlerFactory"/>

保存修改,然后启动internet信息服务,就可以将任意的aspx文件修改为后缀为.aaa的文件了。

如果不想修改machine.config文件,也可以通过修改网站的web.config文件实现,方法类似,在<configuration><system.web>节点下增加如下配置即可:

本文相关代码如下:
<httpHandlers>
<add verb="*" path="*.aaa" type="System.Web.UI.PageHandlerFactory"/>
</httpHandlers>

最后说一点,如果是IIS6(也就是windows2003自带的IIS),还得在IIS的站点属性 -> HTTP头 -> MIME类型 中增加一个.aaa的MIME类型,不然遇到.aaa的请求时将首先被IIS给拦截掉,没办法显示的。

(0)

相关推荐

  • ASP.NET将文件写到另一服务器(图文教程)及注意事项

    有时我们需要将来自于客户端的文件上传到WEB服务器端,并在服务端将文件存储到第三方文件服务器中存储. 实现如下: 1.在文件服务器B上建立一共享文件夹,同时在该服务器上创建一用户,如DocShareUser,给此用户分配共享文件夹的读写权限 2.在WEB服务器A上也同时传建一同名用户DocShareUser (注意,用户名和密码必须一致) 3.在网站下添加一虚拟目录,虚拟目录的物理路径执行服务器A的共享目录,路径符合UNC规则,如\\ServerB\DocShare,传递身份验证用户设置为默认即

  • asp.net实现服务器文件下载到本地的方法

    1.说明 通过文件下载框实现将服务器上的文件下载到本地指定位置.这里需要指定服务器文件路径 //服务器文件路径 string strFilePath = Server.MapPath("~") + "/excel/20170206104654.xlsx"; FileInfo fileInfo = new FileInfo(strFilePath); Response.Clear(); Response.AddHeader("content-disposit

  • Asp.net获取服务器指定文件夹目录文件并提供下载的方法

    本文实例讲述了Asp.net获取服务器指定文件夹目录文件并提供下载的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: string dirPath = HttpContext.Current.Server.MapPath("uploads/"); if (Directory.Exists(dirPath)) {        //获得目录信息        DirectoryInfo dir = new DirectoryInfo(dirPath);       

  • 修改服务器配置,让asp.net文件后缀名随心所欲

    有的网站出于各种各样的原因,在IIS中修改了动态页面的默认后缀,asp时代就有人在服务器上修改配置,把html后缀的文件当作asp文件来解析:也就是说,asp程序(后缀为.asp)可以保存为一个.htm后缀的文件放到服务器上WEB目录下,而服务器照样将之当作asp程序来解释处理,生成结果.这样对访问者来说,还以为网站全是html页面,而且经常更新呢(感觉没什么必要是吗?错了,最起码的一个好处:搜索引擎可是优先收录html页面哦,这样的话站点将很容易被人在搜索引擎中搜索到) 服务器上修改解析asp

  • asp.net检查服务器上目录或文件是否存在的方法

    本文实例讲述了asp.net检查服务器上目录或文件是否存在的方法.分享给大家供大家参考.具体方法分析如下: asp.net为我们提供了文件系统对象了,对于目录与文件判断是否存在我们有System.IO.File.Exists与System.IO.Directory.Exists即可,下面看两个应用实例. 判断文件是否存在: 复制代码 代码如下: using System.IO;  // 还需要命名空间,别忘了 if (System.IO.File.Exists("c:aaa.txt")

  • 修改服务器配置 让asp.net文件后缀名随心所欲

    有的网站出于各种各样的原因,在IIS中修改了动态页面的默认后缀,asp时代就有人在服务器上修改配置,把html后缀的文件当作asp文件来解析:也就是说,asp程序(后缀为.asp)可以保存为一个.htm后缀的文件放到服务器上WEB目录下,而服务器照样将之当作asp程序来解释处理,生成结果.这样对访问者来说,还以为网站全是html页面,而且经常更新呢(感觉没什么必要是吗?错了,最起码的一个好处:搜索引擎可是优先收录html页面哦,这样的话站点将很容易被人在搜索引擎中搜索到) 服务器上修改解析asp

  • PHP实现批量修改文件后缀名的方法

    本文实例讲述了PHP实现批量修改文件后缀名的方法.分享给大家供大家参考.具体如下: /** * 批量修改文件后缀名 * @param $path 文件夹路径 * @param $sext 原文件后缀名 ($sext=all说明整个目录的所有文件) * @param $dext 目的文件后缀名 * @return void */ function foreachDir($path,$sext,$dext){ $handle=opendir($path); if($handle){ while (f

  • Python实现的批量修改文件后缀名操作示例

    本文实例讲述了Python实现的批量修改文件后缀名操作.分享给大家供大家参考,具体如下: windows和linux下都支持该程序 以下程序可以进行批量修改文件后缀名: #!/usr/bin/env python #coding:utf8 #! python3 #批量修改一个文件下的文件后缀 import sys import os def Rename(): #Path = "F:\\test\\" # windows下的文件目录 Path = input("请输入你需要操

  • java批量修改文件后缀名方法总结

    突然需要改一堆文件的后缀名,所以想编程解决,话不多说直接上代码 java import java.io.File; import java.util.Scanner; public class FileEdit { public static void renameFiles(String path, String oldExt, String newExt) { File file = new File(path); if (!file.exists()) { System.err.print

  • python文件操作之批量修改文件后缀名的方法

    1.引言 需要把.dat 格式 转化成 .txt格式 2.实现 ##python批量更换后缀名 import os # 列出当前目录下所有的文件 files = os.listdir('.') #print('files',files) for filename in files: portion = os.path.splitext(filename) # 如果后缀是.dat if portion[1] == ".dat": # 重新组合文件名和后缀名 newname = porti

  • Asp.net 文件上传类(取得文件后缀名,保存文件,加入文字水印)

    复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; usi

  • php一行代码获取文件后缀名实例分析

    本文实例讲述了php一行代码获取文件后缀名的方法.分享给大家供大家参考.具体方法分析如下: php中一行代码获取文件后缀名的方法要结合很多的函数了,我们这个有点像asp中的函数了,下面来一起看看吧. 实例: 复制代码 代码如下: $filename  = 'D:/wamp/www/sparkphp/rar'; $rs =  strtolower(trim(substr(strrchr($filename, "."), 1))); 详解: strrchr()函数查找字符串在另一个字符串中

  • python获取文件后缀名及批量更新目录下文件后缀名的方法

    本文实例讲述了python获取文件后缀名及批量更新目录下文件后缀名的方法.分享给大家供大家参考.具体实现方法如下: 1. 获取文件后缀名: 复制代码 代码如下: #!/usr/bin/python import os dict = {} for d, fd, fl in os.walk('/home/ahda/Program/'):         for f in fl:                 sufix = os.path.splitext(f)[1][1:]           

  • php 获取文件后缀名,并判断是否合法的函数

    核心代码 /** * 获取文件后缀名,并判断是否合法 * * @param string $file_name * @param array $allow_type * @return blob */ function get_file_suffix($file_name, $allow_type = array()) { $file_suffix = strtolower(array_pop(explode('.', $file_name))); if (empty($allow_type))

随机推荐