RSS
热门关键字:  虚拟主机技术  vps团购  discuz架构  虚拟主机团购  curl
当前位置 :| 团购首页>网站编程>ASP>

利用asp实现伪静态

来源: 作者: 时间:2008-07-28 Tag:伪静态   asp   点击:

asp伪静态, 利用404错误转向来实现(原创)
很多网站用的是虚拟主机  服务商不一定提供伪静态功能. . .
但大部分服务商都提供404错误转向.
利用404错误 可以实现 伪静态功能.
下面说下原理
比如网站首页 http://www.lyg28.com/index.asp
上面的信息 地址都为  http://www.lyg28.com/Class/Show.asp?ID=27870
写程序时候只要故意把 http://www.lyg28.com/Class/Show.asp?ID=27870 写成
http://www.lyg28.com/show/27870.html
其实并不存在 http://www.lyg28.com/show/27870.html这个页面. 用户要点击这个超连接的话, 就会自
动调用404错误页面
只要报404错误页面定义为asp页面就可以了.
其中加入获得 Show.asp?ID=27870 页面的Id 27870 然后利用小偷程序 获取改页面的内容
显示在 http://www.lyg28.com/show/27870.html 页面上.
其中最加了 截取 带有/show/和.html的页面 如果不少就转倒正常的err.html错误页面
测试地址 http://www.lyg28.com/show/27870.html http://www.lyg28.com/Class/Show.asp?ID=27870
两个页面是一样的.
下面是 404错误页面的代码
<%
Dim webUrl,start,over,reurl,Url,Html
weburl=GetUrl()
start= instr(weburl, "/show/")
over =instr(weburl,".html")
if start<>0 and over<>0 then
reurl = mid(weburl,start+6,over-7)
reurl = replace(reurl,".html=","")
else  reurl=""
end if
if reurl<>"" then
url="http://www.lyg28.com/Class/Show.asp?ID="&reurl
else
url="http://www.lyg28.com/err.html"
end if
Html = getHTTPPage(Url)
Response.write Html

'常用函数
'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,Cset)
        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 = Cset
        BytesToBstr = objstream.ReadText
        objstream.Close
        set objstream = nothing
End Function

Dim ScriptAddress, M_ItemUrl, M_item 

Function GetUrl()
  ScriptAddress = CStr(Request.ServerVariables("SCRIPT_NAME")) '取得当前地址
  M_ItemUrl = ""
  If (Request.QueryString <> "") Then
  ScriptAddress =  ScriptAddress & "?"
  For Each M_item In Request.QueryString
   If InStr(page,M_Item)=0 Then
    M_ItemUrl = M_ItemUrl & M_Item &"="& Server.URLEncode(Request.QueryString
(""&M_Item&"")) 
   End If
  Next
  end if
  GetUrl = ScriptAddress & M_ItemUrl
End Function
%>

 


 


    由于各种原因,我们无法获知[利用asp实现伪静态]原创作者,如侵犯了您的版权,请您及时联系我们!
上一篇:没有了
下一篇:ASP缓存
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册