2011-08-16 87 views
3

我正在運行Windows 7 64位,並試圖加載我正忙於在本地IIS7機器上寫入的ISAPI擴展。ISAPI擴展在IIS7上提供404

  • 我添加的地點到DLL「ISAPI和CGI限制」下
  • 我所做的應用程序池識別32位應用程序(擴展名是用Delphi編寫的)
  • 我確信「所有人」有在目錄/ DLL完全權限
  • 我確定「處理程序映射」部分中的「允許」 ISAPI的DLL並將其設置爲「讀/腳本/執行」權限

我仍然得到404.0錯誤在IIS7

我檢查過我的MIME映射是設置爲處理* .dll,我有一個完美的工作 ISAPI擴展在同一臺機器上的不同站點上運行。

我甚至把這個ISAPI擴展給了我404,並把它放在工作網站的根目錄(其他DLL是在那裏),並將「ISAPI和CGI限制」重新映射到它。儘管我可以在同一時間或直接在其後運行其他DLL,但仍然給我404.0,這很好。

任何想法WTF正在進行?!

回答

4

事實證明,當您將所有其他設置正常工作時,如果收到404.0文件找不到錯誤,這意味着您正在使用的ISAPI擴展名正在引用(即包括)另一個DLL。如果沒有這個DLL,它將404.0

另外,如果你忘了「允許」特定的ISAPI DLL(即使ISAPI/CGI允許執行),你會得到錯誤信息是404.2 :)

0

對於64位,問題是註冊表:我是32的問題位在註冊表Apache重定向器的位置是:[HKEY_LOCAL_MACHINE \ SOFTWARE \ Apache軟件基金會\雅加達ISAPI重定向\ 1.0]

但對於64 bitlocation必須是:[HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Apache Software Foundation \ Jakarta Isapi Redirector \ 1.0]

請注意「Wow6432Node」。

所以只需重新創建Wow6432Node上的32位,然後設置。

1

我知道這個問題已經得到解答,但是由於我昨天遇到了這個問題,我還要指出,如果應用程序目錄沒有執行權限,404.0是您得到的迴應。這不僅僅是因爲綁定錯誤。