ServerVariables

The ServerVariables collection retrieves the values of environment variables.

Syntax

Request.ServerVariables (variable)

See http://techref.massmind.org/showservervars.asp or http://techref.massmind.org/cgi-bin/showall.asp

Parameters

variable

Specifies the name of the server environment variable to retrieve. It can be one of the following values.

Variable

Description

AUTH_TYPE

The authentication method that the server uses to validate users when they attempt to access a protected script.

CONTENT_LENGTH

The length of the content as given by the client.

CONTENT_TYPE

The data type of the content. Used with queries that have attached information, such as the HTTP queries POST and PUT.

GATEWAY_INTERFACE

The revision of the CGI specification used by the server. Format: CGI/revision

HTTP_<HeaderName>

The value stored in the header HeaderName. Any header other than those listed in this table must be prefixed by “HTTP_” in order for the ServerVariables collection to retrieve its value.

Note The server interprets any underscore (_) characters in HeaderName as dashes in the actual header. For example if you specify HTTP_MY_HEADER, the server searches for a header sent as MY-HEADER.

LOGON_USER

The Windows NT® account that the user is logged into.

PATH_INFO

Extra path information as given by the client. You can access scripts by using their virtual path and the PATH_INFO server variable. If this information comes from a URL it is decoded by the server before it is passed to the CGI script.

PATH_TRANSLATED

A translated version of PATH_INFO that takes the path and performs any necessary virtual-to-physical mapping.

QUERY_STRING

Query information stored in the string following the question mark (?) in the HTTP request.

REMOTE_ADDR

The IP address of the remote host making the request.

REMOTE_HOST

The name of the host making the request. If the server does not have this information, it will set REMOTE_ADDR and leave this empty.

REQUEST_METHOD

The method used to make the request. For HTTP, this is GET, HEAD, POST, and so on.

SCRIPT_MAP

Gives the base portion of the URL.

SCRIPT_NAME

A virtual path to the script being executed. This is used for self-referencing URLs.

SERVER_NAME

The server's host name, DNS alias, or IP address as it would appear in self-referencing URLs.

SERVER_PORT

The port number to which the request was sent.

SERVER_PORT_SECURE

A string that contains either 0 or 1. If the request is being handled on the secure port, then this will be 1. Otherwise, it will be 0.

SERVER_PROTOCOL

The name and revision of the request information protocol. Format: protocol/revision

SERVER_SOFTWARE

The name and version of the server software answering the request (and running the gateway). Format: name/version

URL

Gives the base portion of the URL.

Remarks

If a client sends a header other than those specified in the preceding table, you can retrieve the value of that header by prefixing the header name with “HTTP_” in the call to Request.ServerVariables. For example, if the client sent the following header:

SomeNewHeader:SomeNewValue
 

You could retrieve SomeNewValue by using the following syntax:

 <% Request.ServerVariables("HTTP_SomeNewHeader") %>
 

You can use an iterator to loop through each server variable name. For example, the following script prints out all of the server variables in a table.

<TABLE>
<TR><TD><B>Server Variable</B></TD><TD><B>Value</B></TD></TR>
<% For Each name In Request.ServerVariables %>
<TR><TD> <%= name %> </TD><TD> <%= Request.ServerVariables(name) %> </TD></TR>
</TABLE>
<% Next %>

Example

The following example uses the Request object to display several server variables.

<HTML>
<!-- This example displays the content of several ServerVariables. -->
ALL_HTTP server variable =
<%= Request.ServerVariables("ALL_HTTP") %> <BR>
CONTENT_LENGTH server variable =
<%= Request.ServerVariables("CONTENT_LENGTH") %> <BR>
CONTENT_TYPE server variable =
<%= Request.ServerVariables("CONTENT_TYPE") %> <BR>
QUERY_STRING server variable =
<%= Request.ServerVariables("QUERY_STRING") %> <BR>
SERVER_SOFTWARE server variable =
<%= Request.ServerVariables("SERVER_SOFTWARE") %> <BR>
</HTML>

The next example uses the ServerVariables collection to insert the name of the server into a hyperlink.

<A HREF = "http://<%= Request.ServerVariables("SERVER_NAME") %>
/scripts/MyPage.asp">Link to MyPage.asp</A>

Applies To

Request Object

See Also

ClientCertificate, Cookies, Form, QueryString


© Microsoft Corporation. All rights reserved.