亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

<-
Apache > HTTP Server > 文檔 > 版本2.2
   致謝 | 譯者聲明 | 本篇譯者:金步國(guó) | 本篇譯稿最后更新:2006年1月2日 | 獲取最新版本

自定義錯(cuò)誤響應(yīng)

Apache可以讓網(wǎng)站管理員自己自定義對(duì)一些錯(cuò)誤和問(wèn)題的響應(yīng)。

自定義的響應(yīng)可以定義為當(dāng)服務(wù)器檢測(cè)到錯(cuò)誤或問(wèn)題時(shí)才被激活。

如果一個(gè)腳本崩潰并產(chǎn)生"500 Server Error"響應(yīng),那么這個(gè)響應(yīng)可以被更友好的提示替換或者干脆用重定向語(yǔ)句跳到其他的URL(本地的或外部的)。

top

行為

老式的行為

Apache1.3 會(huì)響應(yīng)一些對(duì)于用戶沒(méi)有任何意義的錯(cuò)誤或問(wèn)題信息,而且不會(huì)將產(chǎn)生這些錯(cuò)誤的原因?qū)懭肴罩尽?/p>

新式的行為

服務(wù)器可以被要求作出如下應(yīng)答:

  1. 顯示一些其他的文字以代替硬編碼的信息
  2. 重定向到本地URL
  3. 重定向到一個(gè)外部的URL

當(dāng)一些信息可以被傳遞的時(shí)候,重定向到另外一個(gè)URL就變得很有用。這些信息用于更清楚的解釋和/或記錄一些錯(cuò)誤或問(wèn)題產(chǎn)生的原因。

為了達(dá)到這個(gè)目的,Apache將定義一些新的類似于CGI環(huán)境變量的環(huán)境變量:

REDIRECT_HTTP_ACCEPT=*/*, image/gif, image/x-xbitmap, image/jpeg
REDIRECT_HTTP_USER_AGENT=Mozilla/1.1b2 (X11; I; HP-UX A.09.05 9000/712)
REDIRECT_PATH=.:/bin:/usr/local/bin:/etc
REDIRECT_QUERY_STRING=
REDIRECT_REMOTE_ADDR=121.345.78.123
REDIRECT_REMOTE_HOST=ooh.ahhh.com
REDIRECT_SERVER_NAME=crash.bang.edu
REDIRECT_SERVER_PORT=80
REDIRECT_SERVER_SOFTWARE=Apache/0.8.15
REDIRECT_URL=/cgi-bin/buggy.pl

請(qǐng)注意"REDIRECT_"這個(gè)前綴。

至少會(huì)有REDIRECT_URLREDIRECT_QUERY_STRING兩個(gè)變量會(huì)被傳遞到新的URL(假定這個(gè)URL是cgi腳本或者是cgi包含頁(yè)面)。其他變量將僅在發(fā)生錯(cuò)誤或問(wèn)題之前存在的情況下才存在。如果你的ErrorDocument使用了外部重定向(任何類似于http: 開(kāi)頭的形式,哪怕它仍指向同一個(gè)服務(wù)器),將沒(méi)有任何變量被指定。

top

配置

當(dāng)對(duì)ErrorDocument進(jìn)行了相應(yīng)的設(shè)置后,將可以在.htaccess文件中使用AllowOverride指令。

以下是一些示例...

ErrorDocument 500 /cgi-bin/crash-recover
ErrorDocument 500 "Sorry, our script crashed. Oh dear"
ErrorDocument 500 http://xxx/
ErrorDocument 404 /Lame_excuses/not_found.html
ErrorDocument 401 /Subscription/how_to_subscribe.html

語(yǔ)法如下:

ErrorDocument <3位錯(cuò)誤代碼> <action>

<action>可以代表:

  1. 用于顯示的用雙引號(hào)(")界定的文字。雙引號(hào)之間的所有文字都將被顯示,但雙引號(hào)本身不會(huì)被顯示
  2. 作為重定向目的外部URL
  3. 作為重定向目的本地URL
top

自定義錯(cuò)誤響應(yīng)與重定向

Apache重定向到URL的行為已經(jīng)進(jìn)行了修改,以便可以在腳本/服務(wù)器端包含頁(yè)面加入額外的環(huán)境變量。

老式的行為

標(biāo)準(zhǔn)CGI變量對(duì)于重定向的目的腳本來(lái)說(shuō)是可見(jiàn)的。但沒(méi)有說(shuō)明重定向的來(lái)源。

新式的行為

一批新的環(huán)境變量將被初始化并提供給重定向的目標(biāo)腳本。每個(gè)新變量都有一個(gè)"REDIRECT_"前綴。REDIRECT_* 環(huán)境變量由重定向之前的CGI環(huán)境變量創(chuàng)建而來(lái),并被加上了"REDIRECT_"前綴。比如說(shuō),HTTP_USER_AGENT變成了REDIRECT_HTTP_USER_AGENT 。在這些新變量之外,Apache還將定義REDIRECT_URLREDIRECT_STATUS來(lái)幫助腳本確定重定向的來(lái)源。重定向的源URL和目的URL都能被記錄到訪問(wèn)日志中。

如果ErrorDocument指定了一個(gè)到本地CGI腳本的重定向,該腳本應(yīng)當(dāng)在它的輸出中包含一個(gè)"Status:"頭字段以確保將導(dǎo)致調(diào)用它的錯(cuò)誤條件始終返回客戶端。舉例來(lái)說(shuō),一個(gè)Perl ErrorDocument腳本可能包含如下內(nèi)容:

...
print "Content-type: text/html\n";
printf "Status: %s <中斷條件>\n", $ENV{"REDIRECT_STATUS"};
...

如果該腳本專門用于處理一個(gè)特定的錯(cuò)誤條件,比如:404 Not Found ,它就可以使用特定的代碼和錯(cuò)誤文本進(jìn)行替代。

需要注意的是如果應(yīng)答包含一個(gè)"Location:"頭(為了進(jìn)行一個(gè)客戶端重定向),腳本必須發(fā)出一個(gè)適當(dāng)?shù)?Status:"頭(比如:302 Found)。否則"Location:"頭可能無(wú)效。