前言:
微軟IIS中的ISAPI其實是個對于很多人都很陌生的東西,這個東西幾乎控制著IIS中一切動態內容的生命,因為只有ISAPI,才可以讓你的動態內容交互式網頁(如ASPX/PHP等),因為ISAPI的高安全性、速度快,許多使用Windows Sever系統的網站在使用IIS時都選擇了ISAPI而拋棄了笨拙的CGI模式。今天就給大家說一說IIS中ISAPI的種種法則。
ISAPI簡介:
ISAPI其實通俗理解就是控制IIS顯示動態交互式內容的一個“漏斗”,只有用戶許可的動態內容(多數是指一種動態語言)才可以從這個漏斗流下,并提供給訪問者。這個漏斗在IIS中被叫做“ISAPI篩選器”。
種種法則:
現在就開始講一下ISAPI的權限法則,這或許可以幫助有些站長盡快配置好自己的IIS。
盡管ISAPI是控制內容顯示的,但是在Windows Sever 2003版本中,用戶在ISAPI篩選器中所指定ISAPI鏈接庫不能直接調用解析用戶請求的動態內容。
例如:
現在這里有一個動態內容網頁AC.PHP,用戶現在請求該文件,但是卻返回“無法找到文件或目錄”的錯誤,其實并不是沒有找到文件,而是PHP文件解析所用到的ISAPI文件(如PHP5ISAPI.DLL)并沒有正確被加載(在ISAPI篩選器顯示為紅箭頭以及“未加載”)。
到這里很多人就不知道該如何做了,其實這個出錯的原因是導致該ISAPI文件沒有權限而無法運行造成的,只要把權限基于這個ISAPI鏈接庫,就可以正常運行了。
如何解決這一問題,如果你在使用IIS 6.0版本,你真夠幸運的,你可以在這個版本中輕易解決這個問題,以下是我總結的方案:
1.首先確定權限的限制是由兩部分造成的:系統文件權限以及服務器擴展權限,首先來到這個ISAPI鏈接庫文件所在的地方,之后給予這個文件EveryOne的完全控制權限(你也可以選擇讀取+寫入+執行的權限組合)。
2.解決服務器擴展權限:來到IIS6.0的“服務器擴展”設置頁面,如果你想圖省事,可以直接點擊“允許所有的未知ISAPI”的按鈕,但我并不推薦這樣做,這樣太不安全了!我們在此應當添加一個新的服務器擴展,擴展名你可以隨便填,文件就選擇到那個ISAPI鏈接庫文件上,然后勾選“將狀態設置為允許”后,保存。
3.為了使設置生效,請重啟系統,重啟后你的ISAPI擴展就可以正常加載了!
說明:這篇文章是根據本人的經驗而寫,絕無虛假、轉載成分,如有疑問,請訪問我的網站-HTTP://WWW.UFANN.COM 或者使用電子郵件聯系我(heiker3630*gmail.com[*換成@])
新聞熱點
疑難解答
圖片精選