windows server 2008+IIS7+ASP Access .microsoft jet database engine 80004005錯誤

1. 讓IIS7支持ASP

Windows server 2008中IIS7是默認不安裝的,所以在安裝完Windows server 2008之後如果需要安裝IIS7的話,就要自己動手了。安裝的步驟爲:開始》控制面板》程序》打開或關閉Windows功能》Internet信息服 務(以前操作系統版本里面的"Windows components” 在server 2008裏面叫做"Programs and Features")。IIS7安裝時需要注意的是,如果需要ASP、ASP.NET等的支持,是需要把功能模塊給裝上的,默認是不安裝的。

2. 解決IIS7中.mdb數據庫問題。

默認裝完IIS7之後,使用ASP程序會發現提示數據庫連接失敗,在網上找了找,說是因爲MS Jet引擎改變了臨時目錄的位置,但是又沒有對臨時的存取權限,導致數據庫使用失敗。

給“系統盤:/Windows/ServiceProfiles/NetworkService/AppData/Local/Temp”目錄添加 一個“Authenticated Users”的用戶,其中AppData目錄是隱藏的,在進入的時候可以直接在地址欄輸入路徑,或者在文件夾選項裏顯示隱藏文件。該項尤其重要,不設置則一直提示microsoft jet database engine 80004005 錯誤。

設置權限步驟:右擊Temp文件夾,選擇“屬性”》選擇“安全”選項卡》單擊“編輯”》出來“Temp 的權限”對話框,單擊“添加”,在下面的“輸入對象名稱來選擇”中輸入Authenticated Users,確定》返回到“Temp 的權限”,將Authenticated Users的權限中的完全控制給勾上,確定》確定。

鏈接方式:

ServerPath=Server.MapPath("/xxx.mdb")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ServerPath
Set schooldb=Server.CreateObject("Adodb.Connection")
schooldb.Open connstr

3. windows 2008 64位系統解決IIS7中.mdb數據庫問題。

如果你使用64位系統,那可能如上辦法也解決不了,原因是64位系統沒有提供64位ACCESS連接的驅動,把網站對應的應用程序池中項目的“啓用32位應用程序”置爲“ture”。 這樣就可以了。

Other tips in IIS7:

a. 啓用父路徑。
      常用的 ../ 父路徑使用在IIS7裏面是默認不支持的。
      在iis的主頁-->ASP -> 雙擊打開-> 啓用父路徑: True

b. 向瀏覽器返回錯誤信息。
      默認網頁代碼出錯瀏覽器會出現“An error occurred on the server when processing the URL. Please contact the system administrator”。
     在iis的主頁-->ASP -> 雙擊打開->調試錯誤-> 將錯誤發送到瀏覽器: True

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章