一套老舊ASP+Access的復活記

因公司種種業務需要,需要在機房某臺Winserver2008R2服務器的IIS7環境下復活一套ASP+Access的老舊信息化系統,考慮到該服務器本身已有一套ASP+MSSQL的系統線上一直運行正常,想必應該很容易搞定,當即就建了一個二級目錄,將全套相關文件拷貝了進去,配置了下相關目錄權限後運行之,系統一直在反覆而堅定地報同一個錯誤:

錯 誤 號:-2147467259
錯誤描述:未指定的錯誤
錯誤來源:Microsoft JET Database Engine

依次做了如下排查:

  1. 該ASP網站ACCESS數據庫所在目錄及有關特別的config目錄賦予用戶讀寫及修改權限,甚至在調試期間,一度將整站賦予了everyone完全控制,未果;

  2. 設置啓用IIS--ASP的父路徑:
    一套老舊ASP+Access的復活記

  3. 設置運行該站點的程序池啓用32位應用程序:
    一套老舊ASP+Access的復活記

  4. 權限權限,還是權限問題:
    自不必說:C:\Windows\temp 目錄需要IIS_IUSRS完全權限,還有一種說法是:IIS7下的32位MS Jet引擎臨時目錄位置:C:\Windows\ServiceProfiles\NetworkService\AppData\Local\Temp 也一併授權處理過了。

後來在一次無意中點擊:
一套老舊ASP+Access的復活記

無法驗證對web站點本地物理路徑的訪問?

一套老舊ASP+Access的復活記

立即做了如下設置:
一套老舊ASP+Access的復活記

一套老舊ASP+Access的復活記

至此再去試了一下:ASP+Access已可正常訪問,問題完美解決。

小結一下:沒有更改上述此項設置之前,爲什麼之前那套Asp+MSSQL一直運行正常,唯獨這套ASP+Access就不行?官方解釋如下:

服務器配置爲將傳遞身份驗證和內置帳戶一起使用,以訪問指定的物理路徑。但是,IIS 管理器無法驗證此內置帳戶是否有訪問權。請確保應用程序池標識具有該物理路徑的讀取訪問權。如果此服務器加入到域中,並且應用程序池標識是 NetworkService 或 LocalSystem,則驗證<domain>\<computer_name>$ 具有該物理路徑的讀取訪問權,然後重新測試這些設置。

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