標籤:
1問題解決:64位作業系統下IIS報“試圖載入格式不正確的程式”錯誤
緣由:在64位作業系統下IIS發布32位的項目,報“項目依賴的dll無法讀取,試圖載入格式不正確的程式”錯誤
原因:程式集之間的通訊要麼全是64位環境下的,要麼全是32位環境下的。不能混編訪問。不然會出現“試圖載入格式不正確的程式”的錯誤。
解決方案:
【C/S】
運行C/S程式比較簡單,直接在Build C/S程式的時候顯式指定為X86(64位系統預設為X64)就可以了。
【B/S】
運行B/S稍稍複雜點。在建立網站的時候,又分為兩種情況。
A:建立的是“項目”:這個時候跟 C/S 的處理是一樣。
B:建立的是“網站”:只需要修改IIS的配置就可以了。
i)“cscript %systemdrive%/inetpub/adminscripts/adsutil.vbs set w3svc/appPools/enable32bitapponwin64 1” (cmd運行後正常)如果提示
無法找到指令檔“c:\inetpub”
不用上面的方法也可解決
64位Win7 IIS7運行
(enable32bitapponwin64為1代表可運行32位應用程式),該項可以通過 “命令列”執行一次。(此命令的作用是使IIS能夠註冊32位的.net FW)
ii)64位OP預設是在IIS下註冊了64位的.net Framework的,因此還必須再註冊一個32位的.net Framework
C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727> aspnet_regiis.exe –i
2問題解決:
使用的iis是在安裝完.net framework 之後才安裝的,需要進行iis註冊,開始--運行--cmd,開啟命令列提示符,輸入命令如下
C:/Windows/Microsoft.NET/Framework/v4.0.30319/aspnet_regiis.exe -i
3
HTTP 錯誤 403.14 – Forbidden
Web 服務器被配置為不列出此目錄的內容。’發布mvc遇到的HTTP錯誤 403.14-Forbidden解決辦法
<system.webServer>
<validationvalidateIntegratedModeConfiguration="false"/>
<modulesrunAllManagedModulesForAllRequests="true" />
</system.webServer>
在web.config增加<modulesrunAllManagedModulesForAllRequests="true" />
如果還不行,請檢查一下“處理常式映射”,裡面是否有“ExtensionlessUrlHandler-Integrated-4.0”,如果沒有,請註冊.net4.0
在運行裡輸入:C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe-i
64位系統 安裝oracle