這篇文章將為大家詳細講解有關Apache設置環(huán)境變量的方法,文章內(nèi)容質(zhì)量較高,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)是專業(yè)的綠園網(wǎng)站建設公司,綠園接單;提供成都網(wǎng)站制作、成都網(wǎng)站建設,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行綠園網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
首先,存在由底層操作系統(tǒng)控制的環(huán)境變量。這些是在服務器啟動之前設置的。它們可以在配置文件的擴展中使用,也可以使用PassEnv指令傳遞給CGI腳本和SSI。
其次,Apache HTTP Server提供了一種機制,用于在命名變量中存儲信息,這些變量也稱為環(huán)境變量。此信息可用于控制各種操作,如日志記錄或訪問控制。變量還用作與外部程序(如CGI腳本)通信的機制。本文將討論了操作和使用這些變量的不同方法。
盡管這些變量稱為環(huán)境變量,但它們與底層操作系統(tǒng)控制的環(huán)境變量不同。相反,這些變量在內(nèi)部Apache結構中存儲和操作。
它們僅在提供給CGI腳本和服務器端包含腳本時才成為實際的操作系統(tǒng)環(huán)境變量。如果您希望操作服務器本身運行的操作系統(tǒng)環(huán)境,則必須使用操作系統(tǒng)shell提供的標準環(huán)境操作機制。
設置環(huán)境變量
基本環(huán)境操作
在Apache中設置環(huán)境變量的最基本方法是使用無條件的SetEnv指令。也可以使用PassEnv指令從啟動服務器的shell環(huán)境傳遞變量。
有條件的每請求設置
為了提高靈活性,mod_setenvif提供的指令允許在每個請求的基礎上設置環(huán)境變量,具體取決于特定請求的特征。
例如,只有在特定瀏覽器(用戶代理)發(fā)出請求時,或者僅在找到特定的Referer [sic]標頭時才能設置變量。通過mod_rewrite的RewriteRule可以獲得更大的靈活性,它使用[E = ...]選項來設置環(huán)境變量。
唯一標識符最后,mod_unique_id將每個請求的環(huán)境變量UNIQUE_ID設置為一個值,該值在非常特定的條件下保證在“所有”請求中是唯一的。
標準CGI變量
除了在Apache配置中設置并從shell傳遞的所有環(huán)境變量之外,CGI腳本和SSI頁面還提供了一組環(huán)境變量,其中包含有關CGI規(guī)范所要求的請求的元信息。
一些警告
使用環(huán)境操作指令無法覆蓋或更改標準CGI變量。
當suexec用于啟動CGI腳本時,在啟動CGI腳本之前,環(huán)境將被清除為一組安全變量。安全變量列表在suexec.c中的編譯時定義。
出于可移植性的原因,環(huán)境變量的名稱可能只包含字母,數(shù)字和下劃線字符。另外,第一個字符可能不是數(shù)字。傳遞給CGI腳本和SSI頁面時,與此限制不匹配的字符將被下劃線替換。
一個特殊情況是HTTP標頭,它通過環(huán)境變量傳遞給CGI腳本等(見下文)。它們被轉(zhuǎn)換為大寫,只有短劃線被替換為下劃線;如果標頭包含任何其他(無效)字符,則會以靜默方式刪除整個標頭。
SetEnv指令在請求處理期間運行較晚,這意味著SetEnvIf和RewriteCond等指令不會看到使用它設置的變量。
當服務器通過內(nèi)部子請求查找路徑(例如查找DirectoryIndex或使用mod_autoindex生成目錄列表)時,子請求中不會繼承每個請求的環(huán)境變量。此外,由于mod_setenvif采取行動的API階段,因此不會在子請求中單獨評估SetEnvIf指令。
以上就是Apache設置環(huán)境變量的方法,看完之后是否有所收獲呢?如果想了解更多相關內(nèi)容,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊,感謝各位的閱讀。
分享標題:Apache設置環(huán)境變量的方法
文章路徑:http://www.rwnh.cn/article26/ghdpjg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、軟件開發(fā)、動態(tài)網(wǎng)站、做網(wǎng)站、移動網(wǎng)站建設、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)