ISAPI扩展在IIS7上提供404

问题描述:

我正在运行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正在进行?!

事实证明,当您将所有其他设置正常工作时,如果收到404.0文件找不到错误,这意味着您正在使用的ISAPI扩展名正在引用(即包括)另一个DLL。如果没有这个DLL,它将404.0

另外,如果你忘了“允许”特定的ISAPI DLL(即使ISAPI/CGI允许执行),你会得到错误信息是404.2 :)

对于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位,然后设置。

我知道这个问题已经得到解答,但是由于我昨天遇到了这个问题,我还要指出,如果应用程序目录没有执行权限,404.0是您得到的回应。这不仅仅是因为绑定错误。