SAS/IntrNet 9.1: Application Dispatcher |
The following table from the sample configuration file lists some standard CGI environment variables. However, you can pass any variables that your Web server supports. (For more information about environment variables, see the CGI area at the World Wide Web Consortium Web site.)
Note: These SAS macro variable names are suggestions only; you do not need to use these exact names.
Environment variables | SAS macro variable | Description |
---|---|---|
GATEWAY_INTERFACE | _GATEWAY | Version of the Common Gateway Interface (CGI) that the Web server uses. |
SERVER_NAME | _SRVNAME | Web server's DNS (host) name or IP address. |
SERVER_SOFTWARE | _SRVSOFT | Web server software name and version. |
SERVER_PROTOCOL | _SRVPROT | Name and revision of the HTTP information protocol transmitting the client request. |
SERVER_PORT | _SRVPORT | Web server port number. |
REQUEST_METHOD | _REQMETH | Method with which the information request was issued, for example, GET or POST. This corresponds with the <FORM...METHOD=GET|POST> statement in the HTML form. |
PATH_INFO | _PATHINF | Extra path information after the script passed to a CGI program. |
PATH_TRANSLATED | _PATHTRN | Local filename of PATH_INFO. |
SCRIPT_NAME | _SCRIPT | Virtual path of the script being executed. In this case, a duplicate of _URL, another macro variable passed to the Dispatcher program. |
DOCUMENT_ROOT | _DOCROOT | Directory from which Web documents are served. This variable is unreliable. |
QUERY_STRING | _QRYSTR | Query information passed to the program. It is appended to the URL with a question mark (?). In this case, it is an unparsed version of the user macro parameters. Set only with GET. |
REMOTE_HOST | _RMTHOST | User's DNS (remote host) name, if known. |
REMOTE_ADDR | _RMTADDR | User's IP address. |
AUTH_TYPE | _AUTHTYP | Authentication method used to validate a user, usually Basic. |
REMOTE_USER | _RMTUSER | Username, if authenticated. |
REMOTE_IDENT | _RMTID | Identification of user making request. RFC931 ID, if supported. |
CONTENT_TYPE | _CONTTYP | The Internet media type (MIME type) of the query data. Set only with POST. |
CONTENT_LENGTH | _CONTLEN | Length of the data (in bytes or number of characters) passed to the CGI program. Set only with POST. |
HTTP_FROM | _HTFROM | E-mail address of the user making the request (unreliable). |
HTTP_ACCEPT | _HTACPT | Internet media (MIME) types that the client can accept. However, you may find using the HTTP_USER_AGENT variable more reliable than HTTP_ACCEPT. |
HTTP_COOKIE | _HTCOOK | Cookies. See also the Set-Cookie header line. |
HTTP_USER_AGENT | _HTUA | Browser name. |
HTTP_REFERER | _HTREFER | If known, the URL of the document that the client points to before accessing the CGI program. |
The Web server makes essential information available to CGI programs as environment variables. You can pass some or all of this information on to your Dispatcher programs by using the Export directive. The syntax is
Export <environment-variable> <SAS variable name>
The Export directive instructs the Application Broker to retrieve the contents of the specified environment variable and make it available to Dispatcher programs in the specified SAS macro variable or SCL list item.
The sample configuration file includes several Export directives. You can activate a directive by changing the information to match your site and removing the # that appears at the left of the export line.
Some Export directives are activated by default. Export REMOTE_HOST _RMTHOST is one. These directives are not preceded by a # in the default configuration file.
If you omit the SAS name, the name of the environment variable will be used as the SAS macro name.
If the value of the environment variable is greater than your field width (as set in _FLDWDTH), then the variable divides like any field into multiple variables. You can avoid this by using SAS variable names with a leading underscore, such as _RMTHOST. Dispatcher variables that begin with an underscore are not divided according to _FLDWDTH. These variables are truncated at 32767 characters.
SAS/IntrNet 9.1: Application Dispatcher |