使IIS6運行在64位系統上

 

最近治理第三方網站一個故障,是2003系統64位sp2,安裝iis6,一瀏覽報錯,以用進程就停止,總是如下錯誤日誌

 

Event Type: Error
Event Source: W3SVC-WP
Event Category: None
Event ID: 2268
Date:  2012-10-9
Time:  15:15:35
User:  N/A
Computer: EDU-STANDBY
Description:
Could not load all ISAPI filters for site/service.  Therefore startup aborted.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Data:
0000: c1 00 00 00               Á...   

 

Event Type: Error
Event Source: W3SVC-WP
Event Category: None
Event ID: 2274
Date:  2012-10-9
Time:  15:15:35
User:  N/A
Computer: EDU-STANDBY
Description:
ISAPI Filter 'C:\Program Files\Helicon\ISAPI_Rewrite3\ISAPI_Rewrite_x64.dll' could not be loaded due to a configuration problem. The current configuration only supports loading images built for a x86 processor architecture. The data field contains the error number. To learn more about this issue, including how to troubleshooting this kind of processor architecture mismatch error, seehttp://go.microsoft.com/fwlink/?LinkId=29349.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Data:
0000: c1 00 00 00               Á...   


執行以下文檔的如下步驟,解決:

 

ASP.NET 2.0,32 位版本
要運行 32 位版本的 ASP.NET 2.0,請按照以下步驟操作: 1. 單擊“開始”,單擊“運行”,鍵入 cmd,然後單擊“確定”。
2. 鍵入以下命令啓用 32 位模式:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
3. 鍵入以下命令,安裝 ASP.NET 2.0(32 位)版本並在 IIS 根目錄下安裝腳本映射:
%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i
4. 確保在 Internet 信息服務管理器的 Web 服務擴展列表中,將 ASP.NET 版本 2.0.40607(32 位)的狀態設置爲允許。

重啓iis後,發現ie瀏覽,調用32位dll後報黃,通過查找註冊表{74AAE24F-D92A-4EF0-87A3-867AC18FA09D},是32爲的dll文件

通過網絡查找到http://www.cnblogs.com/parse/archive/2011/07/11/2103452.html,如下操作

解決方法:打開iis-->查看“網站”的屬性--->ISAPI 篩選器-->把有向下的紅箭頭的項刪除掉-->重啓iis-->OK 。至此全解決。

刪除了日誌報錯的ISAPI_Rewrite3,重啓iis,打開新的ie瀏覽正常

 

 

轉載http://www.cnblogs.com/liangqihui/archive/2008/11/14/1333477.html

 

 

 

如需在Windows 64bit上運行下列32bit應用,只需要執行腳本命令.

Internet服務API擴展
ISAPI過濾器
ASP應用程序
ASP.NET應用程序


腳本命令:

1.
Open a command prompt and navigate to the directory:
cd /d %systemdrive%\Inetpub\AdminScripts

2.
Type the following command:
cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 "true"

3.
Press ENTER.
--------------------


Windows Server 2003 SP1 enables WOW64 compatibility for 32-bit Web applications in IIS 6.0

View products that this article applies to.

 

 

Article ID

:

895976

 

Last Review

:

December 3, 2007

 

Revision

:

3.4

 


SUMMARY

After you install Microsoft Windows Server 2003 Service Pack 1 (SP1) on the products that are listed in the "Applies To" section, you can configure Microsoft Internet Information Services (IIS) 6.0 to start 32-bit worker processes (W3wp.exe). A 32-bit worker process enables WOW64 compatibility for 32-bit Web applications on a server that runs a 64-bit version of Windows Server 2003. This WOW64 compatibility for 32-bit Web applications lets 32-bit DLLs such as ISAPI Filter DLLs and ISAPI Extension DLLs load in-process.

MORE INFORMATION

On a 64-bit version of Windows Server 2003 that has SP1 installed, IIS starts a 32-bit worker process or a 64-bit worker process, according to the value in the following metabase property:
W3SVC/AppPools/Enable32bitAppOnWin64
When the value for the Enable32bitAppOnWin64 property is 0, or when the property is missing, IIS 6.0 starts a 64-bit worker process. If theEnable32bitAppOnWin64 property is present and the value is anything other than 0, IIS 6.0 will start a 32-bit worker process.

IIS 6.0 cannot make sure that configured ISAPI Filter DLLs and ISAPI Extension DLLs can actually load in a worker process. You must make sure that only 32-bit ISAPI DLLs are configured to load in a 32-bit worker process or only 64-bit ISAPI DLLs are configured to load in a 64-bit worker process.

If you configure a 32-bit ISAPI Filter DLL to load in a 64-bit worker process or if you configure a 64-bit ISAPI Filter DLL to load in a 32-bit worker process, an error message that is similar to the following may be written to the Application log:
Event Type: Error
Event Source: W3SVC-WP
Event Category: None
Event ID: 2268

Description:
Could not load all ISAPI filters for site/service. Therefore startup aborted.
Data: 0000: c1 00 00 00
If you configure a 32-bit ISAPI Extension DLL to load in a 64-bit worker process or if you configure a 64-bit ISAPI Extension DLL to load in a 32-bit worker process, you may also receive a 500 error response that contains the following text:
%1 is not a valid Win32 application
We also recommend that you use a 32-bit debugger to troubleshoot 32-bit Web applications. Or, use a 64-bit debugger to troubleshoot 64-bit Web applications. The dump file information may not be accurate if you use either of the following methods:


You use a 64-bit debugger to debug a 32-bit process or application.

 

You use a 32-bit debugger to debug a 64-bit process or application.

 

 

ASP.NET 2.0,32 位版本
要運行 32 位版本的 ASP.NET 2.0,請按照以下步驟操作: 1. 單擊“開始”,單擊“運行”,鍵入 cmd,然後單擊“確定”。
2. 鍵入以下命令啓用 32 位模式:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
3. 鍵入以下命令,安裝 ASP.NET 2.0(32 位)版本並在 IIS 根目錄下安裝腳本映射:
%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i
4. 確保在 Internet 信息服務管理器的 Web 服務擴展列表中,將 ASP.NET 版本 2.0.40607(32 位)的狀態設置爲允許。


ASP.NET 2.0,64 位版本
要運行 64 位版本的 ASP.NET 2.0,請按照以下步驟操作: 1. 單擊“開始”,單擊“運行”,鍵入 cmd,然後單擊“確定”。
2. 鍵入以下命令禁用 32 位模式:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0
3. 鍵入以下命令,安裝 ASP.NET 2.0 版本並在 IIS 根目錄下安裝腳本映射:
%SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis.exe -i
4. 確保在 Internet 信息服務管理器的 Web 服務擴展列表中,將 ASP.NET 版本 2.0.40607 的狀態設置爲允許。
注意:ASP.NET 2.0 的內部版本可能隨當前發行的內部版本的變化而變化。這些步驟適用於內部版本 2.0.40607。

 

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