仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 454|回复: 8
打印 上一主题 下一主题

[学习教程] ASP编程:用ISAPIfilter使INC、ASA文件平安

[复制链接]
活着的死人 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:56:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
对用户来说可预见费用、节约费用,可以做到花少钱办大事。由于省去了购买软件和硬件等的前期费用,用户可以租用较高级的应用软件。ASP的收费是根据软件的类型、客制化程度、用户数量、服务期限来定的,对客户来说这笔费用是可以预见的。方便于客户应用软件的升级。平安
在之前看到老外的一篇文章,如今记不起这个很不错的热忱的有如我一样平常的年老人了,不外邮箱里另有和他会商的邮件。
有很多站点大概都有如许的情形,使用.inc和.asa包括文件来存储数据库毗连信息,出格是.inc的文件,想改失落有必要太多的工夫和做年夜幅度的程序调剂,好比我有个客户就是光.inc文件就有几十个,更别说asp文件了,想改是无从动手的。因而我使用那位本国伴侣的履历,做了很少的一点修改,构成一个isapi的过滤器,但愿能使您的站点的inc和asa文件平安一点。
我不想把尺度的ISAPI的接口函数做逐一先容,对照周全的常识您能够使用VC的ISAPI工程模板来进修。在这里我侧重先容OnUrlMap和怎样用它来完成我们回护INC和其他文件平安性的历程。
isapifilter(InternetServerApplicationProgramInterface(ISAPI)filter)是绑定在IIS体系并监控产生在客户端从WEBSERVER读取文件事务的一种基于windows的程序使用。
因为他能够把持客户端和服务器间的数据互换,我们能够用它来进步WWWSERVER的使用功能好比扩大HTTP日记功效、完成本人的加密和考证体系。
OnPreprocHeaders--服务器预处置客户端头文件.
OnAuthentication--客户端考证.
OnUrlMap--服务器映照逻辑URL到物理路径.
OnSendRawData--服务器发送未经处置的数据到客户端(之前).
OnReadRawData--客户断发送未经处置的数据到服务器(以后,但在服务器处置之前).
OnLog--写日记到服务器文件.
OnEndOfNetSession--会话停止.
上面是OnUrlMap的用法:
DWORDCJsisapiFilter::OnUrlMap(CHttpFilterContext*pCtxt,
PHTTP_FILTER_URL_MAPpMapInfo)
{
//TODO:Reacttothisnotificationaccordinglyand
//returntheappropriatestatuscode
DWORDlenURL=strlen(pMapInfo->pszURL);
DWORDdwReferer=250;
constchar*szURL=strlwr((char*)pMapInfo->pszURL);
constchar*szExtension=&szURL[lenURL-3];
constchar*inExtension=&szURL[lenURL-4];
charszReferer[250];
//到服务器的数据已编码过了
if(strcmp(szExtension,".js")==0||strcmp(inExtension,".inc")==0||strcmp(inExtension,".asa")
==0){
pCtxt->GetServerVariable("HTTP_REFERER",szReferer,&dwReferer);
if(szReferer[0]!=h){
charszRedirect[2];
charszContent[300];
DWORDdwRedirect=2;
DWORDdwContent;
sprintf(szRedirect,"");
sprintf(szContent,"

<html>
<head><title>平安文件
</title></head>
<body>
<b><center><fontsize=+2>该文件包括非公然信息,您没有读取该文件的权限。
</font></b><br><br><br><hr><a
href=mailto:bingb@emount.com.cn>mailto:bingb@emount.com.cn</a><br></center>
</body>
</html>
");
dwContent=strlen(szContent);
pCtxt->ServerSupportFunction(SF_REQ_SEND_RESPONSE_HEADER,szRedirect,&dwRedirect,NULL);
pCtxt->WriteClient(szContent,&dwContent);
returnSF_STATUS_REQ_FINISHED;
}
}
returnSF_STATUS_REQ_NEXT_NOTIFICATION;
}
编译后将编译完成的DLL文件拷贝到winntsystem32inetsrv目次下,然后在站点的属性内里的ISAPI过滤器增加一个过滤器,映照DLL到该文件便可。
从头启动W3SVC服务,然后会见:http://localhost/xxx.inc能够看到前往信息。
有任何成绩能够接洽:bingb@emout.com.cn但愿该文章能对您有效。

对于中小型web应用来说,php有很强的竞争力,linux+apache+mysql+php(lamp)的组合几乎可以胜任绝大多数网站的解决方案,对于大型应用来讲,对于系统架构要求更高,需要有成熟的框架支持,jsp的struts是个不错的框架,国内介绍它的资料也非常多,应用逐渐广泛起来。asp就不用说了,
金色的骷髅 该用户已被删除
沙发
发表于 2015-1-20 06:24:34 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
冷月葬花魂 该用户已被删除
板凳
发表于 2015-1-25 21:53:50 | 只看该作者
如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。
再现理想 该用户已被删除
地板
发表于 2015-1-26 21:14:15 | 只看该作者
那么,ASP.Net有哪些改进呢?
蒙在股里 该用户已被删除
5#
发表于 2015-2-1 10:08:55 | 只看该作者
那么,ASP.Net有哪些改进呢?
兰色精灵 该用户已被删除
6#
发表于 2015-2-7 02:56:44 | 只看该作者
封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
7#
发表于 2015-2-19 23:12:20 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
爱飞 该用户已被删除
8#
发表于 2015-3-13 04:08:10 | 只看该作者
作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。
只想知道 该用户已被删除
9#
发表于 2015-3-20 11:49:41 | 只看该作者
以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 10:21

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表