服務器端包含的指令和使用程序
本節介紹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