服务器端包含的指令和使用程序
本节介绍IIS 5.0服务器端包含的指令的语法和参数值。还介绍IISRESTART实用程序的语法和使用,该实用程序可用来从远程计算机、命令行和SSI指令的内部管理Web服务器。
1. SSI指令、属性和标记
指令 说明
#include 将指定的文件内容插入到被发送到客户机的响应流中,并替换该指令。例如:<!-- #include file=”userfilbits.inc”à
#config 指定用于日期、时间和文件尺寸的格式,以及返回客户机的通用SSI错误消息的文本格式。例如:
<!—#config ERRMSG=”SSI Processing Error”à
<!—#config TIMEFMT=”%A, %B, %d, %Y, %H:%M:%S ”à
<!—#config SIZEFMT=”BYTES”à
参见下文中关于用于该指令的属性和标记的列表
#echo 将HTTP环境变量插入到发送给客户机的相应流中,并替换该指令。例如:
<!--#echo VAR-“SERVER_NAME”à
参见下文中关于用于该指令的属性和标记的列表
#exec 在服务器上执行一个程序或shell命令。例如:
<!--#exec
CGI=”/scripts/myapp.exe?value1=this&value2=that”à
<!--#exec CMD=”cmd.exe /c iisrestart /stop”à
<!--#exec CMD=”cmd.exe /c net start cisvc”à
参加下文中关于该指令的属性和标记列表。
必须添加以下条目到Windows Registry中才可以使用CMD属性:
HKEY_LOCAL_MACHINE
/SYSTEM
/CurrentControlSet
/W3SVC
/Parameters
/SSIEnableCmdDirective
将该值设置为1并重新启动WWW服务,CMD属性才被允许用于#exec指令。将其设置为0则禁止它并防止未验证的使用,否则将会破坏服务器的安装。
#flastmod 将指定文件的最新更改的日期和时间插入到要发送客户机的响应流中。例如:
<!--#flastmod file=”default.asp”à
参见下文中关于该指令的属性和标记的列表。
#fsize 将指定文件的尺寸插入到要发送给客户机的响应流中。例如:
<!--#fsize file=”default.asp”à
参见下文中关于该指令的属性和标记的列表。
2. #exec指令的命令类型属性
属性 说明
CGI 在Web服务器上下文中执行指定的应用(即通过ISAPI对请求和响应的访问),并将任何查询串的值传递到应用中。该应用与Web服务器运行在不同的内存中
CMD 启动指定的操作系统命令的解释程序的一个实例,并执行该指令的命令
3. #cinlcude、#flastmod和#fsiaze的路径类型属性
属性 说明
FILE 该属性的值是绝对和相对路径加上文件名,就像在DOS命令提示中
所使用的,如“/files/web/myfile.txt”
VIRTUAL 该属性值是绝对路径和相对路径加上文件名,与当前的Web站点的根文件夹相关。如“/file/web/myfile.txt”
4. #config指令的SIZEFMT标记
标记 说明
BYTES 文件大小将以字节返回
ABBEV 文件大小将以计算并以最近的千字节(KB)数返回
5. #config指令的TIMEFMT标记
标记 说明
%a 一周的日子按”Mon”、”Tue”等表示
%A 一周的日子按”Monday”、”Tuesday”等表示
%b 月份名按”Jan”、”Feb”等表示
%B 月份名按”January”、”February”等表示
%c 与服务器的地区相对应的当前的日期和时间格式(如11/06/99 12:51:32)
%d 一月的日子按数表示(01到31)
%H 用24小时格式表示当前时间(00到23)
%I 用12小时格式表示当前时间(01到12)
%j 按数字(001到366)表示一年的日子
%m 月份按数字表示(01到12)
%M 当前分钟按数字表示(00到59)
%p 按服务器地区表示相应的“上午”或“下午”文字如(AM或PM)
%S 当前的秒按数字表示(00到59)
%U 一年的每周按数字表示(00到51),并且每周的第一天为Sunday
%w 一周每天按数字表示(0到6),并且每周的第一天为Sunday
%W 一年的没有数字表示(00到51),并且每周的第一天为Monday
%x 当前的日期格式对应于服务器地区表示的(如11/06/99)
%X 当前时间格式相应与服务器地区表示的(12:51:32)
%y 没有世纪表示的年数(如01)
%Y 有世纪表示的年数(如2001)
%z,%Z 服务器时间带的名字或缩写(如果知道的话)
%% 百分号字符
6. #echo指令的VAR标记
标记 说明
AUTH_TYPE 客户机用来验证网页是否拒绝匿名访问的验证类 型,如“Basic”或“NTLM”(即,询问/响应)
AYTH_PASSWORD 由用户向服务器提供的口令,如果该页拒绝匿名访问并且客户机使用Basic方法验证的话
AUTH_USER 由用户向服务器提供的用户名,如果在NTLM和Basic(或其他)方法下该页拒绝匿名访问的话
CONTENT_LENGTH 在请求体中发送的字节数,即,作为POST向服务器发送的字节数
CONTENT_TYPE 作为POST在请求体中发送的数据MIME类型
DOCUMENT_NAME 由客户机请求的文档的全实际路径和文件名
DOCUMENT_URT 由客户机请求的文档的全虚拟路径和文件名
DATE_GMT 服务器操作系统中的日期和时间设置,不带任何
Greenwich Mean Time的调节
DATE_LOCAL Greenwich Mean Time调节后的服务器的操作系统的日期和时间设置
GATEWAY_INTERFACE 用于处理请求的接口类型,如“CGI/1.1”
HTTP_ACCEPT 客户机应用系统通知服务器它所能接受的MIME类型的以逗号分隔的一个列表
LAST_MODITIED 由客户机请求的文件和资源最后被更改的日期和时间
PATH_INFO 由客户机请求的文档的全虚拟路径和文件名,与该Web站点的根文件夹相关
PATH_TRANSLATED 由客户机请求的文档的全实际路径和文件名
QUERY_STRING 在从URL译码格式转换之后,被追加到客户机请求的文档或资源的URL中的任何查询串的值
QYERY_STRING_ UNESCAPED 在从URL编译格式转换前,被追加到客户机请求的文档或资源的URL中的任何查询串的值
REMOTE_ADDR 请求该页的客户机的IP地址
REMOTE_HOST 客户机请求页面的那个网络的主机名或IP地址
REMOTE_NAME 请求页面的客户机的名字(如果有的话)
REQUEST_METHOD 请求页面的使用方法,“GET”或“POST”
SCRIPT_NAME 由客户机请求的文档的全虚拟路径和文件名,与Web站点的根目录相关
SERVER_NAME 接受请求的服务器的网络名和URL主机名
SERVER_PORT 接受请求的端口号。如,“80”是对一般页的请求,“443”是对SSL源的请求
SERVER_PORT_SECURE 端口号,如果该请求是在一个源协议上的话
SERVER_PROTOCOL 传递请求所基于的HTTP协议,如“HTTP/1.1”
SERVER_SOFTWARE Web服务器的名字/版本串,如“Microsoft-IIS/5.0”
URL 在请求文档和资源时用户所指定的完整URL
ALL_HTTP 未包含在该列表中的HTTP环境变量的所有名/值对,如HTTP_COOKIE和HTTP_ACCEPT_LANGUAGE