Request Object - ServerVariables Collection
게시판이나 방명록이나 하여간 뭐를 만들때 이 ServerVariables은 유용한 편이기는
합니다.접속자의 접속환경을 어느정도 알려주니까요. 하지만, 이 컬렉션이 클라이언트에 대한 많은 정보를 제공해 줄 것이라고는 기대하지
마세요.클라이언트에 대해서라면 고작해야. 브라우저 정보나 OS 정보, 접속 IP, 사용자 언어정보 정도 랍니다.그 이상의 정보는 얻어낼
수가 없지요?
어떤 분은 클라이언트의 파티션 정보나 기타 사용자 개인적인 정보를 얻어올 수 있지 않을까?기대하시는 분들도 계신데여...
그렇지는 않다는 것을 기억하시기 바랍니다.
또한, 이 컬렉션은 서버에 상당한 부하를 주는 것이라..MS의 문서에서는 이 컬렉션의 사용을 가급적 자제하라는 권고가
있습니다...그렇기에 정말로 필요한 경우가 아니라면 이 컬렉션을 통해서 정보를 얻어내는 방법은..사용하지 않는 것이
좋습니다. 정말로 필요한 경우를 제외하고는 말이지요....
어쨋든, 이 컬렉션을 통해서 얻어올 수 있는 정보가 무엇인지 여러분은
궁금하실텐데요..아래에 정보들이 쭈~욱 보이지요?? 왼쪽 컬럼의 이름들이 바로 키값인데요.. 원하는 정보에 맞는
키값을 써주시면 그 정보를 얻을수 있습니다. 예를 들면, 서버의 이름을 알고프다면
<%= Request.ServerVariables("SERVER_NAME")%> 처럼 써주시면
되지요.
아래의 키값들을 참조하셔서 원하는 정보들을 얻어보세요... 쉽죠??? 만약 아래처럼 전체의
키값과 내용을 보고싶다면 일일히 따로 따로 추출하지 마시구... For 문으로 돌리시면 됩니다. 어떻게???? ..... 정보를
보시고 난다음에 그 소스를 함께 보실 수 있을 것입니다....
좋은 하루 되세요...
다음은 ServerVariables의 결과의 예입니다. :
ALL_HTTP |
HTTP_CONNECTION:Keep-Alive
HTTP_ACCEPT:image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
HTTP_ACCEPT_ENCODING:gzip, deflate
HTTP_ACCEPT_LANGUAGE:ko
HTTP_COOKIE:TaeyoSite=userid=taeyo; ASPSESSIONIDCATTRQCQ=IODPAHNAPMOJJINCKMAOEGKK
HTTP_HOST:taeyo.net
HTTP_REFERER:http://taeyo.net/lecture/3_beginner_Objects/Request.htm
HTTP_USER_AGENT:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50215)
|
ALL_RAW |
Connection: Keep-Alive
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Accept-Encoding: gzip, deflate
Accept-Language: ko
Cookie: TaeyoSite=userid=taeyo; ASPSESSIONIDCATTRQCQ=IODPAHNAPMOJJINCKMAOEGKK
Host: taeyo.net
Referer: http://taeyo.net/lecture/3_beginner_Objects/Request.htm
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50215)
|
APPL_MD_PATH |
/LM/W3SVC/249557952/Root
|
APPL_PHYSICAL_PATH |
C:\Inetpub\Taeyo.pe.kr\
|
AUTH_PASSWORD |
 
|
AUTH_TYPE |
 
|
AUTH_USER |
 
|
CERT_COOKIE |
 
|
CERT_FLAGS |
 
|
CERT_ISSUER |
 
|
CERT_KEYSIZE |
 
|
CERT_SECRETKEYSIZE |
 
|
CERT_SERIALNUMBER |
 
|
CERT_SERVER_ISSUER |
 
|
CERT_SERVER_SUBJECT |
 
|
CERT_SUBJECT |
 
|
CONTENT_LENGTH |
0
|
CONTENT_TYPE |
 
|
GATEWAY_INTERFACE |
CGI/1.1
|
HTTPS |
off
|
HTTPS_KEYSIZE |
 
|
HTTPS_SECRETKEYSIZE |
 
|
HTTPS_SERVER_ISSUER |
 
|
HTTPS_SERVER_SUBJECT |
 
|
INSTANCE_ID |
249557952
|
INSTANCE_META_PATH |
/LM/W3SVC/249557952
|
LOCAL_ADDR |
127.0.0.1
|
LOGON_USER |
 
|
PATH_INFO |
/lecture/3_beginner_Objects/Request_ServerVariable.asp
|
PATH_TRANSLATED |
C:\Inetpub\Taeyo.pe.kr\lecture\3_beginner_Objects\Request_ServerVariable.asp
|
QUERY_STRING |
 
|
REMOTE_ADDR |
127.0.0.1
|
REMOTE_HOST |
127.0.0.1
|
REMOTE_USER |
 
|
REQUEST_METHOD |
GET
|
SCRIPT_NAME |
/lecture/3_beginner_Objects/Request_ServerVariable.asp
|
SERVER_NAME |
taeyo.net
|
SERVER_PORT |
80
|
SERVER_PORT_SECURE |
0
|
SERVER_PROTOCOL |
HTTP/1.1
|
SERVER_SOFTWARE |
Microsoft-IIS/6.0
|
URL |
/lecture/3_beginner_Objects/Request_ServerVariable.asp
|
HTTP_CONNECTION |
Keep-Alive
|
HTTP_ACCEPT |
image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
|
HTTP_ACCEPT_ENCODING |
gzip, deflate
|
HTTP_ACCEPT_LANGUAGE |
ko
|
HTTP_COOKIE |
TaeyoSite=userid=taeyo; ASPSESSIONIDCATTRQCQ=IODPAHNAPMOJJINCKMAOEGKK
|
HTTP_HOST |
taeyo.net
|
HTTP_REFERER |
http://taeyo.net/lecture/3_beginner_Objects/Request.htm
|
HTTP_USER_AGENT |
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50215)
|
그리고, 다음 소스는 위의 결과가 나오게 하는 소스이랍니다.. 여러분도 다음 소스를 돌려보시면 위와같은 모습의 결과를 얻을 수
있을 것입니다.
<HTML>
<BODY>
<TABLE >
<% For Each key in Request.ServerVariables %>
<TR>
<TD><%=key %></TD>
<TD>
<%
if Request.ServerVariables(key) = "" Then
Response.Write " "
else
Response.Write Request.ServerVariables(key)
end if
%>
</TD>
</TR>
<% Next %>
</TABLE>
</BODY>
</HTML>
|