草根站长论坛's Archiver

wzxy888 发表于 2008-7-8 00:02

asp伪静态,利用404错误转向来实现(转载)

asp伪静态,利用404错误转向来实现(原创) zX$g,U7lx
很多网站用的是虚拟主机  服务商不一定提供伪静态功能。。。5}9t S_6[b
但大部分服务商都提供404错误转向。7Wy8V'v:B)S
利用404错误 可以实现 伪静态功能。
?i0[4k%` 广告下、。本人网站:连云港信息网 [url=http://www.lyg28.com]http://www.lyg28.com[/url]$Vhz5_E1EB!o'P
可以倒小站来交流下 ,论坛地址 [url=http://www.lyg28.com/bbs/index.asp?boardid=35]http://www.lyg28.com/bbs/index.asp?boardid=35[/url]h2i ]|0K1c@
下面说下原理w#p;V f-CW
比如网站首页 [url=http://www.lyg28.com/index.asp]http://www.lyg28.com/index.asp[/url]
Vmsl%[3A 上面的信息 地址都为  [url=http://www.lyg28.com/Class/Show.asp?ID=27870]http://www.lyg28.com/Class/Show.asp?ID=27870[/url]xcH[:?2A
写程序时候只要故意把 [url=http://www.lyg28.com/Class/Show.asp?ID=27870]http://www.lyg28.com/Class/Show.asp?ID=27870[/url] 写成
v6m x`4O*WZY [url=http://www.lyg28.com/show/27870.html]http://www.lyg28.com/show/27870.html[/url]
Q9c;_s(Wb#p BK3~pb-w 其实并不存在 [url=http://www.lyg28.com/show/27870.html]http://www.lyg28.com/show/27870.html[/url]这个页面。用户要点击这个超连接的话,就会自
oe}QNY/[ 动调用404错误页面
dUN?{ 只要报404错误页面定义为asp页面就可以了。)l e? hq,XO4K;A u
其中加入获得 Show.asp?ID=27870 页面的Id 27870 然后利用小偷程序 获取改页面的内容w5Ds8]%\5I}
显示在 [url=http://www.lyg28.com/show/27870.html]http://www.lyg28.com/show/27870.html[/url] 页面上。[Y+a H9B!i9n
其中最加了 截取 带有/show/和.html的页面 如果不少就转倒正常的err.html错误页面 \pS {#oMd
测试地址 [url=http://www.lyg28.com/show/27870.html]http://www.lyg28.com/show/27870.html[/url] [url=http://www.lyg28.com/Class/Show.asp?ID=27870]http://www.lyg28.com/Class/Show.asp?ID=27870[/url]`v!xk,K}7K)E:G X
两个页面是一样的。p0G!n$iT#Q~$mp$f
下面是 404错误页面的代码
%jC8{`N4H2Aw <% p:hhs%?
Dim webUrl,start,over,reurl,Url,Html
A"P9P8ef,@;@&j weburl=GetUrl()
#e#]XA7z:Ap start= instr(weburl, "/show/")9cC9hRb&pX)X%I
over =instr(weburl,".html")
E0r$K~Wk;_Sz}.i if start<>0 and over<>0 then,Kkk%f6LJv8O0T}&T
reurl = mid(weburl,start+6,over-7)'JA(BwH
reurl = replace(reurl,".html=","")!}!HD.a#hR LmjI
else  reurl=""
(}*Y7?q7|$i5h!g}U end if
1@*`P,HNP if reurl<>"" then
+X"P*WW2q3|~&q w url="[url=http://www.lyg28.com/Class/Show.asp?ID=]http://www.lyg28.com/Class/Show.asp?ID="&reurl[/url]
r'w\.{3|1NgG else
'cv7E \R)I url="[url=http://www.lyg28.com/err.html]http://www.lyg28.com/err.html[/url]"
q:Hd8p8Y ^&Q+d+F1x end if
R }\&]%};B[)L Html = getHTTPPage(Url)
%{+`2u^$xQ Response.write HtmlLyg_.S;Rx8{

*E%[9y5\O:]cg '常用函数 a9D+d S0`,g;h
'1、输入url目标网页地址,返回值getHTTPPage是目标网页的html代码@5N'l q k1M8_q
function getHTTPPage(url)
:N8pFN3S(E1H*t     dim Http
@9K6D7|K#r%o     set Http=server.createobject("MSXML2.XMLHTTP")X(|)[4H!dK!x*q
    Http.open "GET",url,false
4t?3Jg t$l     Http.send()
4J3I{V3kJ-Z     if Http.readystate<>4 then
iw ny,c         exit function
L^ Kt ?*ii5\s     end if
C,CU7gB#n~m     getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")-GwT Q&@5S
    set http=nothing
8G@3M{ p4V(T     if err.number<>0 then err.Clear nT+B;X0W&zF
end functioni2l gv9nX8i(y q{
'2、转换乱玛,直接用xmlhttp调用有中文字符的网页得到的将是乱玛,可以通过adodb.stream组件进行
!Gd^M^7\$[4a 转换
!k%`d6]J;PK Function BytesToBstr(body,Cset)
3o MZ Nb         dim objstream
5y:X6H%y&uP1\$Q b5c         set objstream = Server.CreateObject("adodb.stream")
'|;D-Y1BC8v*Q:v         objstream.Type = 1
p;Z fUdS         objstream.Mode =3
f*n dy}+]/Q         objstream.Openp-\*Y%V2o;s^+k
        objstream.Write bodyjm%M3X*\ k[+c@6q}'q
        objstream.Position = 04s-LL o*RB"bq
        objstream.Type = 2)?@:B6S|i1d,b~
        objstream.Charset = CsetnB7g#W7|c^
        BytesToBstr = objstream.ReadText r+X)},?+[}
        objstream.CloseZ*{A D heu
        set objstream = nothingW#w q.r~ n
End Function
C7~ ~"F6hzg(|*\O iB ?c2]1Qv
Dim ScriptAddress, M_ItemUrl, M_item  6]7rCO,V"jW
Function GetUrl()4NK1G;iWG+x qn^
  ScriptAddress = CStr(Request.ServerVariables("SCRIPT_NAME")) '取得当前地址8a9\)oE2m |.p*R:T
  M_ItemUrl = ""6d"Ix!MI6z~#Rf
  If (Request.QueryString <> "") Then
X `d/j Zh5r   ScriptAddress =  ScriptAddress & "?" b1\(QL*FUe `
  For Each M_item In Request.QueryString
b5m|6`3n(|2x'Hy/O    If InStr(page,M_Item)=0 Then&v&bDFdwu| h%d%cRd0s
    M_ItemUrl = M_ItemUrl & M_Item &"="& Server.URLEncode(Request.QueryString
sy a I2O)@k `5f (""&M_Item&""))  
AOB*iFt!C,}`    End Ifdt UkE*P{
  Next["t)^5U i_0?D
  end if
+~ Z#K-GRBl9J   GetUrl = ScriptAddress & M_ItemUrl#r1M;K ?,DP
End Function
P,n#S1u(L %>
%^y0| z?w'j GX~,| H6CYL
本思路原创。。google好像能收录。baidu没有测试过。。。大家愿意试一试,就自己写、、 Yqfp$D
转载请注明出自中国站长与广告论坛 [url=http://www.cnwebmasters.com/]http://www.cnwebmasters.com/[/url],本贴地址:[url]http://www.cnwebmasters.com/viewthread.php?tid=12946[/url]

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.