주로 환경 변수의 값을 얻는 요청 오브젝트의 ServerVariables 속성을 사용하십시오. 사용 된 구문은 다음과 같습니다. request.servariables (변수), "변수"는 서버 호스트 이름, 웹 서버 소프트웨어 이름 등과 같은 환경 변수의 이름을 나타냅니다. "variable"이 "remote_addr"인 경우 방문자의 IP 주소를 나타내고,이를 통해 IP 주소의 필터링을 수행 할 수 있습니다.
소스 프로그램은 다음과 같습니다. (파일 이름 : demo.asp)
<html>
<헤드>
<metahttp-equiv = content-typecontent = text/html; charset = gb_2312-80>
<metaname = GeneratorContent = MicrosoftFrontPageExpress2.0>
<스타일>
<!-
. as {line-height : 15px; font-size : 9pt}
A : 호버 {색상 : rgb (0,51,240); 텍스트 결정 : 밑줄}
.p9 {font-family : 安安; font-size : 9pt; line-height : 15pt}
.p12 {font-family : 安安; font-size : 12pt; line-height : 18pt}
A : Link {Text-Decoration : None;}
A : 방문 {Text-Decoration : None;}
A : 호버 {Text-Decoration : Underline; Font-Size : 125%; 색상 : Blue}
->
</스타일>
<title> ASP 페이지 방화벽 기능 데모 </title>
</head>
<Bodybackground = back.jpg>
<%
'request.servervariables (remote_addr)를 사용하여 IP 주소를 가져 와서 변수 RIP에 저장하십시오.
rip = request.servervariables (remote_addr)
Strip = cstr (RIP)
'IP 주소의 세 번째 부분의 값을 얻고 스트립에 저장하십시오.
fori = 1 ~ 2
스트립 = 오른쪽 (스트립, 렌 (스트립) -instr (1, Strip ,.)))))
다음
strip = 왼쪽 (str, instr (1, str,.) -1)
'두 가지 측면을 포함한 IP 주소 유효성 검증 및 비밀번호 확인 :
'IP 주소가 값을 충족하는 경우 통과 확인; IP 주소가 값을 충족하지 않으면 입력 된 암호가 올바른지 확인하십시오 (여기서 암호는 ASP입니다).
if (왼쪽 (rip, 5) <> 127.1orstrip <1orstrip> 50) Andrequest (passwd) <> aspthen
%>
<p> <fontcolor =#ff0000> 죄송합니다. IP는 <%= rip%> 이고이 페이지에서 액세스 할 수있는 ip는 127.1.1.* 사이입니다.*. 이 장치의 내부 네트워크 사용자 인 경우 브라우저가 프록시를 사용하지 않도록하십시오! <br> </font> </p>
<formaction = demo.aspmethod = postid = form1name = form1>
<p> 액세스 비밀번호를 입력하십시오 : <inputtype = passwordname = passwd> <inputtype = admplalue = 확인 이름 = b1>;
</p>
</form>
<%else%>
'법적 사용자가 액세스 할 수있는 페이지, 모든 정보는 여기에 추가 할 수 있습니다.
축하합니다. Page Security 인증을 성공적으로 통과 했으며이 사이트의 리소스를 직접 사용할 수 있습니다!
<%endif%>
</body>
</html>
실제로 위의 프로그램 (예 : IP 주소 및 기타 정보)을 약간 수정하십시오. 물론 이것은 한 페이지의 보안 방지 기능만을 구현합니다. 웹 사이트에 여러 페이지가있는 경우 다음 페이지에서 사용자가 판단 할 수 있도록 세션 변수를 설정할 수 있습니다.