帮忙解释下这段ASP代码不允许从外部地址,访问本站后台

来源:百度知道 编辑:UC知道 时间:2024/07/07 18:43:00
ComeUrl=lcase(trim(request.ServerVariables("HTTP_REFERER")))
if ComeUrl="" then
response.write "<br><p align=center><font color='red'>对不起,为了系统安全,不允许直接输入地址访问本系统的后台管理页面。</font></p>"
response.end
else
cUrl=trim("http://" & Request.ServerVariables("SERVER_NAME"))
if mid(ComeUrl,len(cUrl)+1,1)=":" then
cUrl=cUrl & ":" & Request.ServerVariables("SERVER_PORT")
end if
cUrl=lcase(cUrl & request.ServerVariables("SCRIPT_NAME"))
if lcase(left(ComeUrl,instrrev(ComeUrl,"/")))<>lcase(left(cUrl,instrrev(cUrl,"/"))) then
response.write "<br><p align=center><font color='red'>对不起,为了系统安全,不允许从外部链接地址访问本系统的后台管理页面。</font></p>"
response.end
end if
end if

大家帮忙解释下每句的意思,谢谢!
mid(ComeUrl,len(cUrl)+1,1) 这句是什么意思

ComeUrl=lcase(trim(request.ServerVariables("HTTP_REFERER"))) '得到服务器的域名
if ComeUrl="" then '如果为空,说明不是通过正常方式访问,比如在在本地建了个网页,然后访问你的后台。
response.write "<br><p align=center><font color='red'>对不起,为了系统安全,不允许直接输入地址访问本系统的后台管理页面。</font></p>"
response.end
else
cUrl=trim("http://" & Request.ServerVariables("SERVER_NAME")) '获取主机头,比如http:// a.com
if mid(ComeUrl,len(cUrl)+1,1)=":" then '判断后边的端口,一般网站后边加上:说明不是80端口
cUrl=cUrl & ":" & Request.ServerVariables("SERVER_PORT")
end if
cUrl=lcase(cUrl & request.ServerVariables("SCRIPT_NAME")) 'lcase是把字符串变成小写
if lcase(left(ComeUrl,instrrev(ComeUrl,"/")))<>lcase(left(cUrl,instrrev(cUrl,"/"))) then '判断开始访问时的域名和提交信息时候的域名是否相等,不相等说明是非法入侵
response.write "<br><p align=center><font color='red'>对不起,为了系统安