Request Object - ServerVariables Collection
게시판이나 방명록이나 하여간 뭐를 만들때 이 ServerVariables은 유용한 편이기는 합니다.접속자의 접속환경을 어느정도 알려주니까요. 하지만, 이 컬렉션이 클라이언트에 대한 많은 정보를 제공해 줄 것이라고는 기대하지 마세요.클라이언트에 대해서라면 고작해야. 브라우저 정보나 OS 정보, 접속 IP, 사용자 언어정보 정도 랍니다.그 이상의 정보는 얻어낼 수가 없지요?
어떤 분은 클라이언트의 파티션 정보나 기타 사용자 개인적인 정보를 얻어올 수 있지 않을까?기대하시는 분들도 계신데여... 그렇지는 않다는 것을 기억하시기 바랍니다.
또한, 이 컬렉션은 서버에 상당한 부하를 주는 것이라..MS의 문서에서는 이 컬렉션의 사용을 가급적 자제하라는 권고가 있습니다...그렇기에 정말로 필요한 경우가 아니라면 이 컬렉션을 통해서 정보를 얻어내는 방법은..사용하지 않는 것이 좋습니다. 정말로 필요한 경우를 제외하고는 말이지요....
어쨋든, 이 컬렉션을 통해서 얻어올 수 있는 정보가 무엇인지 여러분은 궁금하실텐데요..아래에 정보들이 쭈~욱 보이지요?? 왼쪽 컬럼의 이름들이 바로 키값인데요.. 원하는 정보에 맞는 키값을 써주시면 그 정보를 얻을수 있습니다. 예를 들면, 서버의 이름을 알고프다면 <%= Request.ServerVariables("SERVER_NAME")%> 처럼 써주시면 되지요.
아래의 키값들을 참조하셔서 원하는 정보들을 얻어보세요... 쉽죠??? 만약 아래처럼 전체의 키값과 내용을 보고싶다면 일일히 따로 따로 추출하지 마시구... For 문으로 돌리시면 됩니다. 어떻게???? ..... 정보를 보시고 난다음에 그 소스를 함께 보실 수 있을 것입니다....
좋은 하루 되세요...
현재 접속하신 분의 ServerVariables의 결과입니다. :
ALL_HTTP | HTTP_CONNECTION:Keep-Alive HTTP_ACCEPT:text/html, application/xhtml+xml, */* HTTP_ACCEPT_ENCODING:gzip, deflate HTTP_ACCEPT_LANGUAGE:ko-KR HTTP_COOKIE:__utma=110578560.1512005449.1295255624.1302242097.1302245588.5; __utmz=110578560.1302242097.4.4.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=asp%20table%20%EC%82%AD%EC%A0%9C%EB%B2%84%ED%8A%BC HTTP_HOST:www.taeyo.pe.kr HTTP_REFERER:http://search.naver.com/search.naver?sm=tab_hty&where=nexearch&query=asp+servervariables%28%22SERVER_NAME%22%29 HTTP_USER_AGENT:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) |
ALL_RAW | Connection: Keep-Alive Accept: text/html, application/xhtml+xml, */* Accept-Encoding: gzip, deflate Accept-Language: ko-KR Cookie: __utma=110578560.1512005449.1295255624.1302242097.1302245588.5; __utmz=110578560.1302242097.4.4.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=asp%20table%20%EC%82%AD%EC%A0%9C%EB%B2%84%ED%8A%BC Host: www.taeyo.pe.kr Referer: http://search.naver.com/search.naver?sm=tab_hty&where=nexearch&query=asp+servervariables%28%22SERVER_NAME%22%29 User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) |
APPL_MD_PATH | /LM/W3SVC/688450068/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 | 688450068 |
INSTANCE_META_PATH | /LM/W3SVC/688450068 |
LOCAL_ADDR | 119.205.211.4 |
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 | 180.64.114.44 |
REMOTE_HOST | 180.64.114.44 |
REMOTE_USER | |
REQUEST_METHOD | GET |
SCRIPT_NAME | /lecture/3_beginner_Objects/Request_ServerVariable.asp |
SERVER_NAME | www.taeyo.pe.kr |
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 | text/html, application/xhtml+xml, */* |
HTTP_ACCEPT_ENCODING | gzip, deflate |
HTTP_ACCEPT_LANGUAGE | ko-KR |
HTTP_COOKIE | __utma=110578560.1512005449.1295255624.1302242097.1302245588.5; __utmz=110578560.1302242097.4.4.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=asp%20table%20%EC%82%AD%EC%A0%9C%EB%B2%84%ED%8A%BC |
HTTP_HOST | www.taeyo.pe.kr |
HTTP_REFERER | http://search.naver.com/search.naver?sm=tab_hty&where=nexearch&query=asp+servervariables%28%22SERVER_NAME%22%29 |
HTTP_USER_AGENT | Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) |
그리고, 다음 소스는 위의 결과가 나오게 하는 소스이랍니다.. 여러분도 다음 소스를 돌려보시면 위와같은 모습의 결과를 얻을 수 있을 것입니다.
<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> |
출처 : http://www.taeyo.pe.kr/lecture/3_beginner_Objects/Request_ServerVariable.asp