ASP简单防盗链方法

0

分类 : 技术文摘 | 发表时间 04-01-2007

如果我们知道一个静态文件的实际路径如:http: //www.xx.com/download/51windows.pdf,如果服务器没有作特别的限制设置,我们就可以毫不费力的把它下载下来!当网站 提供51windows.pdf下载时,怎么样才能让下载者无法得到他的实际路径呢!本文就来介绍如何使用Asp来隐藏文件的实际下载路径。

我们在管理网站文件时,可以把扩展名一样的文件放在同一个目录下,起一个比较特别名字,例如放pdf文件目录为the_pdf_file_s,把下面代码另存为down.asp,他的网上路径为http: //www.xx.com/down.asp,我们就可以用http://www.xx.com/down.asp?FileName= 51windows.pdf来下载这个文件了,而且下载者无法看到这个文件实际下载路径的!在down.asp中我们还可以设置下载文件是否需要登陆,判断下载的来源页是否为外部网站,从而可以做到防止文件被盗链。

以下是引用片段:
<%
From_url = Cstr(Request.ServerVariables("HTTP_REFERER"))
Serv_url = Cstr(Request.ServerVariables("SERVER_NAME"))
if mid(From_url,8,len(Serv_url)) <> Serv_url then
response.write "非法链接!" ‘防止盗链
response.end
end if

if Request.Cookies("Logined")="" then
response.redirect "/login.asp" ‘需要登陆!
end if
Function GetFileName(longname)’/folder1/folder2/file.asp=>file.asp
while instr(longname,"/")
longname = right(longname,len(longname)-1)
wend
GetFileName = longname
End Function
Dim Stream
Dim Contents
Dim FileName
Dim TrueFileName
Dim FileExt
Const adTypeBinary = 1
FileName = Request.QueryString("FileName")
if FileName = "" Then
Response.Write "无效文件名!"
Response.End
End if
FileExt = Mid(FileName, InStrRev(FileName, ".") + 1)
select Case UCase(FileExt)
Case "ASP", "ASA", "ASPX", "ASAX", "MDB"
Response.Write "非法操作!"
Response.End
End select
Response.Clear
if lcase(right(FileName,3))="gif" or lcase(right(FileName,3))="jpg" or lcase(right(FileName,3))="png" then
Response.ContentType = "image/*" ‘对图像文件不出现下载对话框
else
Response.ContentType = "application/ms-download"
end if
Response.AddHeader "content-disposition", "attachment; filename=" & GetFileName(Request.QueryString("FileName"))
Set Stream = server.createObject("ADODB.Stream")
Stream.Type = adTypeBinary
Stream.Open
if lcase(right(FileName,3))="pdf" then ‘设置pdf类型文件目录
TrueFileName = "/the_pdf_file_s/"&FileName
end if
if lcase(right(FileName,3))="doc" then ‘设置DOC类型文件目录
TrueFileName = "/my_D_O_C_file/"&FileName
end if
if lcase(right(FileName,3))="gif" or lcase(right(FileName,3))="jpg" or lcase(right(FileName,3))="png" then
TrueFileName = "/all_images_/"&FileName ‘设置图像文件目录
end if
Stream.LoadFromFile Server.MapPath(TrueFileName)
While Not Stream.EOS
Response.BinaryWrite Stream.Read(1024 * 64)
Wend
Stream.Close
Set Stream = Nothing
Response.Flush
Response.End
%>

网站的定位最关键之个人建站

0

分类 : 网站技术 | 发表时间 27-09-2006

  首先我们可以把个人建站的目的分为以下几种:

  1、无目的型

  看别人有自己的网站,所以跟风建网站,没有目的,网站没有内容,大多为无目的的转摘或者干脆就建立一个BBS,服务器一般是虚拟主机,生命期一般很短,1年服务器到期之后就挂掉了。

  2、自娱型

  以娱乐自己为目的,纯粹的展示个人的一些生活体会、感悟、影音以及搜藏的一些喜欢的东西,常见的网站为个人的blog等,一般采用的是免费申请的大网站的空间,或者花费很少的虚拟主机,生命期长,但并不稳定。

  3、娱人娱己

  以娱乐别人为达到自娱的目的,以无偿为广大网友提供各种免费资源为乐趣,这样的网站一般以电影下载,资料文献下载居多,常见于教育网内,服务器一般为自己的台式机电脑,例如一些ftp服务器,提供数据是以G计算的。生命期不长,随着毕业可能网站也就挂掉了。

  不得不提的是这样的网站还包括,为广大网友提供免费原创开源的代码的网站,曾经的Dedecms,yemao,以及一些论坛,可惜旅行的作品在大陆已经很少能再看见了,经典的WDB。这样的网站可能最终会转型为营利性网站。

  还要感谢emuch的网站,这里可能是国内最好的学术资源免费网站了。

  4、娱己娱人

  不以盈利为目的的服务大众的网站,当然会收取网友的捐助,但绝不会强迫网友捐助,这样收到的费用基本可以保证网站的正常运行即可。生命期比较长。这里也包括一些技术型的网站,比如maxthon、dedecms现在应该属于这样的类型Ilikeit,因此才来落伍的。

  以上4种有一个总的特点就是不以盈利为目的。下面再介绍以下以盈利为目的的个人网站的类型:

  1、技术型

  这类网站是以出售原创代码为基础的,首先是由个人编写,然后慢慢形成一个团队,最后发展成为一个公司,比如国内的dvbbs,yuzibbs,discuz,phpwind,leoboard,还有许多CMS。

  2、资源型

  主要以提供影视下载为盈利手段,一般是结合一些Bt下载软件,多采用小区宽带作为网络接入,然后发展到后来需要租用电信的服务器。

  主要以提供信息服务为主要内容,比如学术期刊,或者一些搜索引擎搜索不到的资源。

  3、域名空间服务商

  虽然这些网站以公司自居,但是一大部分就是一个人的公司,因为域名不是自己的,服务器不是自己的,都是作上一级商业机构的代理,来赚取差额的利润。随着发展可能会在电信机房租用自己的服务器提供虚拟主机服务。利润比较客观

  4、色 情 网站非法哦

  提供不良信息,通过卖浏览、下载帐号来盈利,其实这也属于资源型的网站,只不过是非法资源。利润可观

  5、广告型

  通过建立个人网站,放置广告。这包括2种类型,一种就是放一大堆强奸人眼睛,弹出的广告,来赚取点击率现在这样的网站已经减少了很多。利润低,讨人厌!

  还有一种就是网站的流量变收入就像im286先埋头苦干,增加网站的知名度和名气,然后再投放广告。收入很客观!!

  6、投机型

  靠注册一些比较特别的域名以及电子信箱的帐号来出售赚取利润,风险高。

  7、出售网站型

  做出人气很旺的特色网站,然后出售。

  以上就是我总结的目前互联网个人建站的状况,不是特别全面,欢迎你来补充!

  建立网站是一个耗费时间、耗费精力、耗费金钱的一件事情,在建立个人网站之前要想好自己属于那种类型,现在对于个人建网站,如果你没有本金的支 持,没有一个很好的点子,没有自己的特色,那么很难再“兴风作浪”啦。虽然机会很多,但就象在网游里面“开荒”的年代早已过去。

成功网络管理员必备“软件”素质

0

分类 : 技术文摘 | 发表时间 08-05-2006

做一名成功的网管员不仅要进行网络的规划设计、网络设备的招投标、系统集成等事项外,必须具备一定的“硬件”素质,能选择和采购好的网络设备,进行安装、配置和调试,保证局域网正常、稳定地运行,要想做好这些工作,则必须要具备一定“软件”素质。本文就和大家一起讨论成功网管员必备的“软件”素质。

  一、成功网管员必备的“软件”素质

  由于许多网络设备的软件以及服务器的操作系统都是英文版的,因此要想熟练地使用和掌握这些软件,我们的网管员必须有一定的英文阅读能力,能够掌握大量的计算机专业词汇,从而能够流畅地阅读原版的白皮书和技术资料,最主要是看懂网络设备和管理软件说明书,了解网络技术的最新发展动态。

  若欲提高企业网络应用水平,就必须要有恰当的管理培训。根据企业网建设的经验,技术培训是企业网络建设能否成功的关键环节。因此,网络管理员还往往承担着繁重的技术培训任务,必须能够胜任教师的工作。根据企业网中不同人员的责任和地位,分别对其进行内容以及深度不同的培训,重点是对软件的应用方面的。例如,对网络管理维护人员的培训、对网络开发人员的培训,以及对普通工作人员的培训。培训必须面向应用、富有针对性,真正做到因材施教、学以致用。

  1、掌握服务器软件的安装和配置方法

  操作系统

  计算机是由硬件和软件组成的,缺了任何一样都无法运行。我们对计算机进行操作,都是利用操作系统来完成。服务器上运行的是网络操作系统,网络操作系统(NOS)是网络的心脏和灵魂,是向网络计算机提供服务的特殊的操作系统。它在计算机操作系统下工作,使计算机操作系统增加了网络操作所需要的能力。

一般情况下,NOS是以使网络相关特性达到最佳为目的的,如共享数据文件、软件应用,以及共享硬盘、打印机、调制解调器、扫描仪和传真机等。NOS还对每个网络设备之间的通信进行管理,这是通过NOS中的媒体访问法来实现的。

  大家目前比较熟悉的可能就是windows 操作系统,在服务器上运行早期是windows NT Server,现在普遍使用是windows 2000/2003 Server;除了Windows外,一类是UNIX,代表产品包括SUN Solaris、HP-UX、IBM AIX等;还有一类是Linux,它虽说是后起之秀,但由于其开放性和高性价比等特点,近年来获得了长足发展,象redhat、红旗等产品;还有就是Novell系统。

  总的来说,Windows是简单易用的操作系统,适合中小型企业及网站建设;UNIX具有非常好的安全性和实时性,广泛用在金融、银行、政府、军事及大型企业;Linux具有高的安全性和稳定性,一般用做网站的服务器和邮件服务器;Novell是工业控制、生产企业、证劵系统比较理想的操作系统。

  首先作为网管员必须要了解这些操作系统的使用场合,操作系统在服务器上安装和配置方法,系统的日常运行和管理,掌握出现问题如何解决等技巧,操作系统的安全设置(系统补丁的安装)等等。完成这些工作是我们网管员必须具备软件的素质之一。

  应用软件

  我们在对操作系统掌握比较熟练后,在OS基础上架构网站(WEB),DNS、DHCP、FTP、Email等服务,以及视频、短信、游戏、BBS等等,都是服务器上的应用软件,还有代理软件、局域网内服务器/客户机上网络防病毒软件的安装与运行;以及企业本身的财务软件、办公系统、管理信息系统以及ERP等应用系统,保证这些应用软件(系统)的正常、稳定运行,是我们成功网管员必须具备软件的重点素质之一。

  2、网管软件及网管工具软件

  网络管理的需求决定网管系统的组成和规模,任何网管系统无论其规模大小,基本上都是由支持网管协议的网管软件平台、网管支撑软件、网管工作平台和支撑网管协议的网络设备组成。

其中网管软件平台提供网络系统的配置、故障、性能及网络用户分布方面的基本管理,也就是说,网络管理的各种功能最终会体现在网管软件的各种功能的实现上,软件是网管系统的“灵魂”,是网管系统的核心。

  网管平台软件的主要作用是收集网络设备的硬件信息,通过这些网管软件可以观看网络拓扑图、设置警报等。网络管理员在很多情况必须借助各种管理软件监控整个网络的运行情况,了解网络服务和用户。

此外,使用管理软件的设备诊断功能是查找故障的好方法。借助网络管理的一些小的工具软件,可以大大减轻网管员日常的重复性劳动和工作压力,提高工作效率,为实现提高生产力,保障企业效益最大化提供基础。这肯定是我们成功网管员必须具备软件的重点素质之一。

  3、掌握数据库的安装和配置方法

  数据库服务也是服务器提供的重要服务之一,常见的数据库系统有MS SQL Server、MySQL、Oracle、Sybase、DB2等。许多应用系统都是在数据库系统基础上进行的,比如企业信息管理系统、计费系统等,特别是一些大型的Web网站,一般都使用数据库来作为后台支撑,完成三级的Web/Server构架。因此我们也必须要掌握各种数据库的安装和配置方法,做好数据库管理员的日常运行维护工作。

  4、掌握数据备份与灾难恢复

  在网络系统安全建设中必不可少的一个环节就是数据的常规备份和历史保存。一般在生产本地的备份目的主要有两个:一是生产系统的业务数据由于系统或人为误操作造成损坏或丢失后,可及时在生产本地实现数据的恢复;另一个目的是在发生地域性灾难(地震、火灾、机器毁坏等)时,可及时在本地或异地实现数据及整个系统的灾难恢复。

  对于大多数网管员来说,备份是一项繁重的任务。网络备份最好能够实现定时自动备份,这样可以大大减轻管理员的压力。一般来说,为了保护数据安全和提高数据的持续可用性,企业要从RAID保护、冗余结构、数据备份、故障预警等多方面考虑。

  作为网管员还必须要学会和掌握备份软件的使用和操作,这样才能做好日常的数据备份和恢复工作。要做到灾难恢复,首先备份系统时要做到满足系统容量不断增加的需求,并且备份软件必须能支持多平台系统。

当网络上连接上其它的应用服务器时,对于网络存储管理系统来说,只需安装支持这种服务器的客户端软件即可将数据备份到磁带库或光盘库中。其次,网络数据存储管理系统是指在分布式网络环境下,通过专业的数据存储管理软件,结合相应的硬件和存储设备,来对全网络的数据备份进行集中管理,从而实现自动化的备份、文件归档、数据分级存储以及灾难恢复等。

  5、掌握网络设备与防火墙的配置和调试方法

  网管员要熟悉思科等主流厂商的基本网络设备(包括交换机、路由器)的配置和调试方法,这也是网管员最基本的工作之一;为了保障网络的正常稳定运行,网管员还必须了解和掌握网络安全设备(包括防火墙、IDS)的配置和调试方法,因此要学习和调试这些设备命令语句,制定安全策略,根据实际需求,配置好网络设备和安全设备,使它们能发挥最优的、最好的效果



  二、总结

  网管员必须具备创造和应变能力,硬件设备、管理工具、应用软件所提供的直接功能往往是有限的,而显示的网络需求却是无限的,如何用有限的功能满足无限的需要呢?这就需要网络管理员具有很强的、有创造性的应变能力,从而利用现有的功能、手段和技术,通过不同功能的排列、组合和巧妙结合,创造性地实现各种复杂的功能,满足用户各种需求。

  网络还是一个系统,因此一项功能的实现往往需要借助于多种措施和设置,而导致故障发生往往由于多种原因,既可能是一因多果,也可能是一果多因。所以网络管理员必须拥有非常强的分析和判断能力,用全面、动态和联系的眼光分析问题,善于进行逻辑推理,从纷繁复杂的现象中发现事物的本质。

  网络管理员必须拥有充沛的体力、旺盛的精力和坚韧不拔的毅力。网络总是在不问地断运行,网络管理工作也同样是在日复一日,年复一年地重复进行。长时间的、大强度的脑力劳动无疑是非常辛苦的,所以,网络管理员既要非常热爱自己的工作,又要有强健的体魄支持,两者缺一不可。

  除了技术过硬之外,网络管理员还必须具有较好的沟通能力。与网络公司沟通,既可传达公司对功能的需求,构建令人满意的网络,也可以了解网络设计理念,掌握相关的知识和技术;与用户沟通,可以及时掌握用户的需求,更好地为用户提供服务;与领导沟通,可以及时了解领导意图,调整网络服务策略和内容。

  因此作为一名成功的网管员还必须具备上面所说的“软”素质,结合“硬件”素质和“软件”素质,才能真正做好企业的“网管”工作。

网站投资你和我的20个自身检查

0

分类 : 社会文摘 | 发表时间 20-04-2006

1、web2.0提了也白提
web2.0这是一个概念,打着web2.0的概念,只是说技术如何如何2.0,战略如何2.0,其实意义真的不大。投资人需要的是一个网民能够接受,并且很有特点的网站,能够满足网民的某个需求,或者能够引导网民的某个需求。你的网站提供的服务只要是有市场潜力的,有发展空间的,真的不用冠上某个新鲜的概念。

2、不要和投资人谈什么大战略
你一上来就是网站建设大而全,这些那些统统都有,栏目100个,功能1000个,网民来了就一站搞定,根本不用去其他地方了。投资人一般认为这是不可能的。一个栏目都建设不好,谈什么所有的栏目都建设的好呢?而且,耗资巨大,建设时间动不动就是一年一年半,等到建设好了,黄花菜都凉了。见过一个人提了个虚拟城市的计划,几乎连政府部门都搬进来了,投资人会说:你说的是对的,但是谁敢给你投资做这个看着很美妙却是一个海市蜃楼的东西?

3、先有第一批用户是至关重要的
不要指望着网站大了,功能全了,用户就来了,一个网站做起来,第一批用户的作用是至关重要的。如果告诉我第一批用户就是网站宣传出来的,我肯定会只给打20分。你必须有一个非常有粘性的吸引网民能够来注册的特点。我们谈的是一个战役,战役开始攻占第一个山头是决定成败的,而不是和我描述整个战役是否能够成功,那是纸上谈兵,诸葛亮都有过这个点上的投资错误,结果是斩了马谡。所以投资人的在这个方面的教训远比你想的更深刻。

4、不要抓大而放小
别小看一个网站中很小的一个功能或者服务,你的这个小服务,很可能就是桥头堡,很可能形成一个网站内的环境,一上来就是视频战略如何如何,内容战略如何,某项宏大的市场活动如何。其实投资人要听的只是你第一步的特点,网民没有时间来听你谈战略,他们进来可不是来关心你还没有实现的这些战略的,他们要的是吸引他们的东西,哪怕只是一个会员视频认证或提供更漂亮的模板,或者让他们看到你网站上面全都是穿三点的会员。

5、无线应用绝对不是盈利模式的全部
没有盈利模式,就拿无线来凑,可是一个新网站,能不能得到特服号不说,如何和其他SP竞争也是一个问题。别人凭什么要来订阅你的服务,或者给你拨打声讯电话?首先你的盈利模式不需要无线就能存在,再拉上无线,这样才有说服力。

6、不是有激情就可以
你没有什么管理经验或者运营经验,你提的点子再好,但我怎么相信你就能把一个团队管理好?搞企业可不是几个好朋友过家家,宣传推广也是烧钱就一定有效果。你都没有失败过,怎么知道你这样做就一定成功?

7、别指望网民给你提供内容
你作为机构,自己都不能生产出合适的内容,而指望网民来提供内容,那几乎太高估我们的网民的综合实力了,美国80%网民的人还都不知道BLOG是何物。就算是你的原则就是不生产,只要也要有整合某些内容的能力或者引导内容生产的能力。

8、不要吹嘘合作伙伴是什么顶尖团队
一说就是技术人员是负责以前某个项目的,结果一问是做旅店的视频监控的,却非要说他能够负责整个网站的技术实现。这个技术跨度让人感觉很可怕。你还不如实话实说,他做视频监控也一定有技术特点或者优势的,没必要包装成大而全的技术专家。

9、毕业三年最好自己做,不要想着能找到投资
才毕业三年,自己以前都没有自己的网站,就要召集几个和你一样的年轻人找别人要投资。太浮躁了吧。的确有一毕业就创业成功的,但是你也要知道别人在上学的时候干的事情你根本没有勇气去尝试。老是拿者别人的成功来掩饰自己的缺点,或者来证明自己也有成功的可能性,是很幼稚的。

10、不要以为你的想法没有人想过
真的不要在没有了解清楚之前,就为自己的某几个想法激动的睡不着觉,好像是投资人眼界还没有你高,没有理解你的伟大的思路,不能理解你的独创性。还给人冠上不是伯乐的帽子。实际上你自己去好好的搜索一下,你这个想法在好几年前就有了,而且有人已经做出来了。所以在谈话和计划书上不要吹嘘什么自己是独创性的,前无古人后无来者,会让人发笑。

11、不要以为投资人是傻冒
投资人是要靠投资来赚钱的,当然会比较慎重,如果碰到特别好的项目,投资人一定会仔细的考虑,并且会给你一些更多的帮助。因为投资人也知道帮你成功了,他们也就发财了。所以不要以为投资人是傻冒,摆着的钱都不赚。实际上投资人比你要聪明的多。

12、你的网站至少是已经开发完成80%以上了,才有和投资人争论的资本
网站只开发了不到50%,模样都还看不出来,就想获得投资,这几乎是不可能的。可能你的点子真的很好,但是既然是好的点子,那就应该全部完成了以后,再找投资人谈谈,让他看看现成的成果。50%的网站就非要给人看,你自己不怕别人把你的东西都学去吗?现在就和投资人争论只是没有完全开发出来,所以你还看不出来,实际上是如何如何的,这都是没有什么意义的。

13、要知道自己的网站以后的拓展方向在哪里
如果你能让投资人相信你能走好第一步,那么你就应该详细的说明下一步你们网站还能扩大些什么具体业务,可以包容什么样的人群,不要一上来就是说我的业务对象和人群就是15-30岁的年轻人。这些人群如何聚集起来,是要一步步的来的,也和你自己的平台本身的拓展性有很大的关系。这是一个分步骤的计划,也是对自己网站的延展性的描述。一定要重视。投资人的投资,是希望你的网站能够不断扩大业务种类和用户范围,而不是做出来什么样,就是什么样。

14、成本要算的清楚
我看过一个计划,15个人月薪总支出就是20多万,而一年的人工成本是多少,硬件设备,带宽成本都没有算,这钱花着也太容易了吧。又不是你饿了就随手能够采到果子吃,基本生存的成本都算的不清楚,以后的钱要支出的方面更多,难道给投资人一笔糊涂账就OK了?所以,你应该字仔细的把成本都考虑清楚,如果你连加班要用的牙刷牙膏的成本都想到了,投资人会很欣慰的。

15、团队一定要性格互补,并有合作的经验
拉着几个人,谈了两三天,刚好几个人都没工作或者不满现状,就宣布团队成立了。这样的团队怎么让人放心,一到利益冲突的时候,亲兄弟都可能翻脸,何况是你们几个重来没有合作过的人组成的团队。到时候闹得不可开交,投资人的投资怎么办?我看投资人真投了,那才会天天睡不好觉,怕你们闹矛盾。所以,如果是团队作战,千万不要生拉硬拽,临时拼凑,这样就算得到了第一笔投资,后面的资金支持将会随着你们的分崩离析而荡然无踪。

16、有自己的独特的资源,并能够在网站上应用
你个人或者团队的资源整合能力和运营能力,是投资人相当重视的。如果你有好的资源,希望你能够利用到你的网站中去,不要另辟新径,因为新的途径你自己都不太了解。比如你以前做某个传统行业,那就不要做的网站和这个行业一点关系都没有;又比如你以前一直做某

网站盈利很难吗?

0

分类 : 美文美景 | 发表时间 26-03-2006

网站盈利很难吗?非也。
我自己做过好几个盈利的网站了。
网站盈利有一个突出的优势,即成本非常低。这最符合经商的一条黄金定律,即“低价买进,高价卖出”。我身边也有一些朋友没有网站同样在网上赚到了白花花的银子。
所以控制一个网站的成本是非常重要的。
下面请看我做一个网站的投入:
国际域名一个  每年58元。
7*24小时稳定动态虚拟主机空间一个,支持数据库
每年200元
平时用的电脑就不算了吧
480元钱包14个月的上网费也不算了,哦,还有电费,因为即使不做网站也要上网的。
工费,不算了,业余爱好,只占用业余时间(^-^也没少占用上班时间,谁叫我们工资低还经常拖欠呢)
技术?呵,网站是不是挣钱和技术关系不大。
推广?呵,网站盈利和不正确的推广方法成反比,所谓不正确的推广方法是指那些花钱象花公款,烧钱都不心疼的***。再说了我们这样的穷人借遍七大姑八大姨也就凑个十万二十万,还不够在网上打水漂的,不小心,走到大街上被人指脊梁骨,骂做败家子。
所以,穷人自有穷办法,我们这样的站长都有一些传男不传女的,打死都不说的推广绝活。无奈。所谓“穷生奸计、富长良心”可能就这个意思吧。一些个人站长随便使出个“奇技淫巧”就抵得上几万快钱的广告费。
像上面说的投入,每天几千的访问量没感觉有何迟钝,如果做纯静态的页面投入就更低了。一个每天有几千人来访的商店如果不赢利是如何也说不过去的。你总不能说网民都穷的掉渣吧。
我的经验,每天1000ip,没任何赢利模式的网站仅凭广告费能赚到100元左右,(当然每个网站的情况,每个广告的情况都不一样,需要认真用心研究)。那么一个一万ip的网站月入千元应该是常有的事。我们这样的凭着爱好做站的站长其实还有更大的收获,比如生活过的更充实、更快乐。呵呵,还有更重要的是,把做网站当作学习,比如我在和女朋友(我现在的老婆)谈恋爱时就做了一个恋爱兵法方面的网站~-~,我想创业当老板就做了个创业方面的网站,也小赚了点。现在我已经看准了互联网将是今后一个非常大的发展趋势,打算在网上起点风云,所以本着学习的目的搞了一个专门研究、交流网站发展的论坛,自己在网站建设、维护的过程中给一些站长朋友帮了些忙,自己也增加了不少见识。其实网站赢利不赢利不是最重要的,关键是你在建站的过程中有没有收获。做网站把身体搞垮了或者想钱想疯了其实是很可悲的一件事。
还有几句话想说:
1 互联网的本质是共享,主流是免费,主体是菜鸟。
2
前几天童心大发,在街上玩了回套圈游戏,就是花上一块钱,套上什么要什么那种,有一点感悟:那些贵重的、诱人的远景有可能就是陷阱,只有离你最近的才可能成为你真实的收获。所有的思想和行动只有和实际紧密结合时,才可能是成功的开始,当然也只是可能而已。
3
写到最后忽然灵光一现,是一句非常重要的、自我感觉非常精彩的一句话,稍一走神忽然就忘了,怎么也想不起来,看起来电脑有些地方比人脑要好,能随时保存,人的思维如果能保存,那么人就真的长生了。
4 如果觉的本文有些调侃而您感觉没有任何收获,那可能就是您至今没有收获的原因,也可能是您看完本文没有收获的原因。:-?
5 说的不对,请大家批评指正,但请不要骂人,更不能蒙面骂人,蒙面骂人者可耻。请参考〈致论坛骂人者〉
好了,就写到这里,我去想想我刚才想说什么来着,想不起来就太遗憾了!

小偷程序大揭秘

0

分类 : 技术文摘 | 发表时间 23-11-2005

前言:小偷程序其实是懒人的妙法。它可以偷文章,实时新闻资讯,歌曲,甚至歌曲数据的职能寻找和入库等!功能可谓强大,但是还有好多朋友到处求小偷程序,问什么?因为网上没有几篇详细介绍小偷程序的文章供大家参考。其实做小偷程序并不难,我在这儿把我作小偷程序的经验贴出来大家看看,可能也有不对的地方,请大家多多指出来。

一、基本原理及简单实例

原理部分网上太多了,blue1000也没有必要在这里罗嗦了,这里引用一下,嘿嘿
注:此下内容为引用(有部分修改):原作者:572019 引用自:动易网络

(一)原理
小偷程序实际上是通过了XML中的XMLHTTP组件调用其它网站上的网页。比如新闻小偷程序,很多都是调用了sina的新闻网页,并且对其中的html进行了一些替换,同时对广告也进行了过滤。用小偷程序的优点有:无须维护网站,因为小偷程序中的数据来自其他网站,它将随着该网站的更新而更新;可以节省服务器资源,一般小偷程序就几个文件,所有网页内容都是来自其他网站。缺点有:不稳定,如果目标网站出错,程序也会出错,而且,如果目标网站进行升级维护,那么小偷程序也要进行相应修改;速度,因为是远程调用,速度和在本地服务器上读取数据比起来,肯定要慢一些。
(二)事例
下面就XMLHTTP在ASP中的应用做个简单说明

<%
‘常用函数
’1、输入url目标网页地址,返回值getHTTPPage是目标网页的html代码
function getHTTPPage(url)
dim Http
set Http=server.createobject(“MSXML2.XMLHTTP”)
Http.open “GET”,url,false
Http.send()
if Http.readystate<>4 then
exit function
end if
getHTTPPage=bytesToBstr(Http.responseBody,”GB2312″)
set http=nothing
if err.number<>0 then err.Clear
end function


’2、转换乱玛,直接用xmlhttp调用有中文字符的网页得到的将是乱玛,可以通过adodb.stream组件进行转换

Function BytesToBstr(body)
dim objstream
set objstream = Server.createObject(“adodb.stream”)
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = “GB2312″ ‘转换原来默认的UTF-8编码转换成GB2312编码,否则直接用XMLHTTP组件调用有中文字符的网页得到的将是乱码
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
‘下面试着调用http://www.3doing.com/earticle/的html内容
Dim Url,Html
Url=”http://www.3doing.com/earticle/”;
Html = getHTTPPage(Url)
Response.write Html
%>


注:此上内容为引用(有部分修改):原作者:572019 引用自:动易网络

二、几个常用的函数

(一)InStr 函数
描述
返回某字符(string2)串在另一字符串(string1)中第一次出现的位置。
语法
InStr(string1, string2)
例如:
Dim SearchString, SearchChar
SearchString =”http://blue1000.com” ‘ 要在其中搜索的字符串。
SearchChar = “blue1000″ ‘ 搜索 “blue1000″。
MyBK = Instr(SearchString, SearchChar) ‘ 返回 8
‘如果找不到则返回”0″,例如:
SearchChar = “BK”
MyBK = Instr(SearchString, SearchChar) ‘ 返回 0

(二)Mid 函数
描述
从字符串中返回指定数目的字符。
语法
Mid(string, start, over)
例如:
Dim MyBK
MyBK = Mid(“我们的BK(blue1000.com)设计”, 7, 12) ‘截取字符串”我们的BK(blue1000.com)设计”第7个字符以后的12个字符
‘此时MyBK的值就变成了”blue1000.com”

(三)Replace 函数(这个我就不细说了,只举个例子)
Dim SearchString, SearchChar
SearchString =”我们的BK设计是一个网站建设资源网站” ‘ 要在其中搜索的字符串。
SearchString =Replace(SearchString,”BK设计”,”Blue1000.Com”)
‘此时SearchString的值就变成了”我们的Blue1000.Com是一个网站建设资源网站”

上面的内容只说了如何获取整个页面的html的代码和几个常用的函数,那么如何获取指定部分的代码呢?如何删除我不需要的内容呢?如何才能将外站的链接改成我的呢?又如何实现把原来的翻页做成我的呢?
(一)如何截取指定区域的HTML代码?
(对方网站的HTML代码在哪儿看?晕:IE浏览器>>查看>>源文件。不要告诉我你不知道IE是什么!)
例如我只想获取以下HTML代码中”<td>”和”</td>”之间的的文字部分:

<html>
<title>BK(blue1000.com)设计–网页制作资源站点</title>
<body>
<table>
<tr><td></td></tr>
<tr><td id=”Content”>BK(blue1000.com)设计–网页制作资源站点是个资源多多的站点……</td></tr>
</table>
</body>
</html>
<%
……
Dim StrBK,start,over,RsBK
StrBK=getHTTPPage(网页的地址)
start=Instr(StrBK,”<td id=”"Content”">”) ‘此处的作用是获取字符串开始地方的定位。Instr函数前面一节说过了哦~

‘这里要有人问了:原来的代码是<td id=”Content”>,怎么你这里调用的是<td id=”"Content”">啊?答案:asp中(准确的说是VBscript中是用两个双引号来表示一个双引号的,因为双引号对于程序来说是个敏感字符。)
over=Instr(StrBK,”…</td></tr>”)’此处的作用是获取字符串结束地方的定位。
‘这里又要有人问了:( :程序调用HTML代码干吗前面多出来3个点点”…”啊?答:提示:上面一行也有一个</td></tr>,如果这里用</td></tr>来定位的话,程序会错误地把上面一行的</td></tr>当成欲获取字符串的结束部分了。
RsBK=mid(StrBK,start,over-start) ‘此处的作用是取出StrBK中第start个字符到第over个字符之间的字符串。mid函数前面一节我也讲过了;over-start是为了计算出开始位置和结束位置之间的距离,也就是字符数。
response.write(RsBK) ‘最后输出程序获取的内容
%>
不要高兴的太早,当你运行的时候,你会发现页面的html代码有错误,为什么呢?因为你获取的html代码是:

<td id=”Content”>BK(blue1000.com)设计–网页制作资源站点是个资源多多的站点…
看到了吧?有残缺的HTML代码啊!怎么办呢?start=Instr(StrBK,”<td id=”"Content”">”)这个语句获取的是”<td id=”Content”>”在StrBK中的位置数,现在我们可以在程序语句的后面加上17,那么程序就会将位置指向<td id=”Content”>后面的那个字符.
好的,程序将改成这样:
<%
……
Dim StrBK,start,over,RsBK
StrBK=getHTTPPage(网页的地址)
start=Instr(StrBK,”<td id=”"Content”">”) + 17
over=Instr(StrBK,”…</td></tr>”) ‘这里你也可以减去七(-7)把3个点去掉
RsBK=mid(StrBK,start,over-start)
response.write(RsBK)
%>

这样就OK了,我们就可以将我们想要的东西偷过来显示在我们自己的页面了,呵呵~

(二)如何将获取的字符中的一部分删掉或者做一些修改?
接着上面的来讲,我们可以将RsBK中的”BK(blue1000.com)”换成”BK”:
RsBK=replace(RsBK,”BK(blue1000.com)”,”BK”)
或者直接把”(blue1000.com)”删掉:
RsBK=replace(RsBK,”(blue1000.com)”,”")
好了,现在RsBK就变成了:”BK设计–网页制作资源站点是个资源多多的站点……”了.

但是事实中,有些情况可能replace函数是不适应的,比如我们想把某个字符串里面的所有连接都去掉.连接可能包括很
多种类型,replace只能替代其中特定的一个,我们不可能用一个又一个对应的replace函数来替换吧?
那么现在就用到了程序中的正则表达式,详细请参阅:
正则表达式简介(1):
http://www.blue1000.com/bbs/dispbbs.asp?boardID=3&ID=1558&page=1
正则表达式简介(2):
http://www.blue1000.com/bbs/dispbbs.asp?boardID=3&ID=1559&page=1

如果哪位朋友正好想去掉页面中所有链接的话,请关注Blue1000.com的下一篇教程:<<如何清除网页中的所有链接[正则表达式]>>

(三)如何将对方网站的翻页也处理成我们自己的呢?
答案是:利用replace函数和页面参数的传递。
例如对方页面里含有这样的翻页代码:”<a href=2.htm>下一页</a>”,我们可以先利用上面讲的内容,获取这个字符串,然后用replace函数:RsBK=replace(RsBK,”<a href=”,”<a href=page.asp?Url=”)
然后再page.asp的程序里获取Url的参数值,最后用小偷技术获取下一页你想要的内容就可以了。

(四)如何将获取的内容入库
由于篇幅有限,这里简单说一下.
其实很简单:
将偷来的内容作一下处理,防止在写入数据库的时候出现sql注入错误,例如:replace(String,”‘”,”””)
然后执行一个插入数据库操作的sql命令就ok了~
以上只是一些关于XMLHTTP组件的初级应用,实际上它还能实现的功能还有很多,比如说保存远程图片到本地服务器上,配合adodb.stream组件可以把获取来的数据保存进数据库。小偷的作用和使用范围都很广。

最好再送大家两个源码,大家可以参考参考:
站长站站长学院的技术文章小偷(blue1000做的,还用了一些javascript优化了速度):
http://blue1000.com/bbs/dispbbs.asp?boardID=9&ID=1595&page=1
blue1000修改完善的音乐小偷程序:
http://blue1000.com/bbs/dispbbs.asp?boardID=9&ID=1599&page=1

无觅相关文章插件,快速提升流量