Response.Redirect "target_url"
Response.Redirect 必須在任何輸出發送給瀏覽器之前執行。若已有 HTML/空白字元輸出,將拋出「標頭已送出」錯誤。
<%
If Session("CustomerID") = 0 Then
Response.Redirect "homepage.asp"
End If
%>
<html><body>...
<% Response.Buffer = True %>
<html><body>
<%
' 業務邏輯...
If Request("FName") = "" Then
Response.Clear
Response.Redirect "../test.html"
Else
Response.Write Request("FName")
End If
%>
</body></html>
Response.Buffer = True 會暫存所有輸出,直到腳本結束或呼叫 Response.Flush/End。
Server.Transfer "/internal/page.asp"
| 方法 | 用途 |
|---|---|
CreateObject | 建立 COM 元件實例 |
Execute | 執行另一 ASP 檔案(如函式庫調用) |
GetLastError | 取得 ASPError 物件(錯誤處理頁面用) |
HTMLEncode | HTML 編碼防 XSS |
MapPath | 相對路徑轉絕對物理路徑 |
Transfer | 伺服器端轉向(保留狀態) |
URLEncode | URL 編碼 |
<%= Server.MapPath(Request.ServerVariables("PATH_INFO")) %>
' 輸出:C:\Inetpub\wwwroot\script\test.asp
<%= Server.MapPath("data.txt") %>
' 相對當前目錄:C:\Inetpub\wwwroot\script\data.txt
<%= Server.MapPath("/script/data.txt") %>
' 相對網站根目錄:C:\Inetpub\wwwroot\script\data.txt
<% Server.ScriptTimeout = 120 %> ' 設為 120 秒
<% Timeout = Server.ScriptTimeout %> ' 讀取目前值
註:不可小於 IIS 管理介面設定的預設值。
Response.Buffer = TrueServer.GetLastError + Server.Transfer