リクエストオブジェクトのServerVariablesプロパティを使用するには、それを使用して環境変数の値を取得します。使用される構文は、request.servervariables(変数)、「変数」は、サーバーホスト名、Webサーバーソフトウェア名などの環境変数の名前を表します。「変数」が「remote_addr」の場合、訪問者のIPアドレスを表し、IPアドレスのフィルターを達成できます。
ソースプログラムは次のとおりです。(ファイル名:demo.asp)
<html>
<head>
<metahttp-equiv = "content-type" content = "text/html; charset = gb_2312-80">
<metaname = "generator" content = "microsoftfrontpageexpress2.0">
<style>
<!---
.as {line-height:15px; font-size:9pt}
A:Hover {color:rgb(0,51,240);テキストゼア:アンダーライン}
.p9 {font-family: "宋体"; font-size:9pt; line-height:15pt}
.p12 {font-family: "宋体"; font-size:12pt; line-height:18pt}
a:link {テキストデコレーション:なし;}
A:訪問{テキストデコレーション:なし;}
A:Hover {Text-Decoration:underline; font-size:125%; color:blue}
->
</style>
<Title> ASPページファイアウォール機能デモ</title>
</head>
<bodybackground = "back.jpg">
<%
'request.servervariables( "remote_addr")を使用してIPアドレスを取得し、変数RIPに保存します
rip = request.servervariables( "remote_addr")
ストリップ= CSTR(RIP)
'IPアドレスの3番目のセグメントの値を取得し、それを保存してストリップします
fori = 1to2
ストリップ=右(ストリップ、レン(ストリップ)-Instr(1、ストリップ、 "。"))
次
strip = left(str、strust(1、str、 "。")-1)
'IPアドレスの妥当性の検証とパスワード検証、2つの側面を含む:
'IPアドレスが一貫している場合は、検証を渡します。 IPアドレスが一致しない場合は、入力されたパスワードが正しいかどうかを確認します(ここのパスワードは「ASP」です)
if(left(rip、5)<> "127.1" orstrip <"1" orstrip> "50")andrequest( "passwd")<> "asp"
%>
<p> <fontcolor = "#ff0000">申し訳ありませんが、IPは<%= RIP%>であり、このページでアクセスできるIPSは127.1.1。*および127.1.50。*の間です。このユニットの内部ネットワークのユーザーである場合は、ブラウザがプロキシを使用しないことを確認してください!<br> </font> </p>