Call Us 203.687.6053

Blog with a focus on DotNetNuke news, tips and tricks, DNN SEO, and insights and opinions about the DNN community at large.

Running DotNetNuke on 64-bit Windows

Posted by Tom on Wednesday, July 11, 2007 to DotNetNuke, DNN Tips and Tricks

On a recent project I was tasked with moving a DNN 3.2.2 based website to Windows Server 2003 x64 Edition. What I ran into is not directly related to DNN, but more so to the .NET 1.1 framework which ASP.NET and DNN rely on.

First I noticed that .NET 1.1 was not installed on the 64-bit box. So I downloaded the redistributable package from Microsoft, who lists the 64-bit version of Windows Server 2003 SP1 as a supported operating system. Shortly after starting the installation though, I was greeted with the following message:

This "incompatibility" refers to the fact that 64-bit processes cannot load 32-bit DLLs. The Windows-32-on-Windows-64 (WOW64) compatibility layer was introduced with Service Pack 1 of Windows Server 2003 and allows IIS 6.0 to run 32-bit Web applications on 64-bit Windows. In other words, you have to scale IIS back to 32-bit mode to run pre-DNN4 versions on 64-bit Windows.

So as instructed, I opened a command prompt and navigated to the %SystemDrive%\Inetpub\AdminScripts directory and ran the following command to put IIS into WOW64 mode:

cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 “true”

Next I confirmed that ASP.NET was properly registered with IIS and was set to "Allowed" in the Web Service Extension list of IIS.

There was still one piece of the puzzle missing though. There was no ASP.NET tab in the IIS management console. At that point I browsed to my DNN install to see what would happen. An error happened and the error message indicated that DNN was "calling" ASP.NET 2.0. Since this is DNN 3.2.2 I needed it to play with version 1.1, but how do you switch versions without the ASP.NET tab in IIS?

Without being overly concerned about running DNN 4.x on this box or other web applications that require ASP.NET 2.0, I "unregistered" it by navigating to the %SystemDrive%\WINDOWS\Microsoft.NET\Framework\v2.0.50727 directory and running aspnet_regiis -u from the command line. I figured this way there is only ASP.NET 1.1 left and therefore DNN has no versions to "choose" from. And indeed, the website came up error free and functioned properly.

I was still curious about the missing ASP.NET tab in IIS though. As it turns out, it is a knows issue. But you can still run ASP.NET 1.1 and 2.0 side-by-side in 32-bit mode on a 64-bit machine. You'll have to use aspnet_regiis -s <path of the application> to map web applications to specific ASP.NET versions.

To sum up, you can run ASP.NET 1.1 and 2.0 (even concurrently) on a 64-bit Windows box, but you have to put IIS in WOW64 mode to support the 32-bit DLLs of the .NET Framework 1.1. As expected, the Windows-32-on-Windows-64 compatibility layer creates additional overhead and therefore Microsoft does "not recommend this environment for .NET Framework 1.1 applications that demand high performance or scalability, such as high-load ASP.NET applications."  Of course, this only makes sense to begin with if you have to support "legacy" web applications such as DNN 3.2.2. Once you upgrade to DNN 4.x, you also move to the .NET Framework 2.0, which includes native 64-bit support for Itanium-based systems.

It took me quite a while to wrap my head around all this. So if I went off in the wrong directions somewhere please let me know in the comments.


Permalink Permalink      Comments 3 Comments      RSS feeds RSS feeds      Email updates Email updates

 

Comments

Comment By Tom Harris on Wednesday, July 11, 2007 at 10:33 AM

I went through this last year on my own servers. My issue though was with trying to get Sharepoint services working along side of DNN 4x in 64bit. I wanted to connect with Expression Web or Visual Studio remotely which requires FrontPage Extensions and Sharepoint Services. Frontpage Extensions install okay but without Sharepoint services you can't connect. Unfortunately Sharepoint Services and DNN or any other asp.net 2.0 app never got along in 64bit Windows 2003. I tried Sharepoint Services 3 but still couldn't get it to work. Any ideas? I really would like to connect remotely with Visual Studio or Expression Web.

Comment By Ismet Dumlupinar on Wednesday, July 11, 2007 at 12:00 PM

Hey Tom, this is great informative post for those 64bit users. I am also happy that i can access here now,

Btw the new look is perfect.

Comment By Tom Kraak on Wednesday, July 11, 2007 at 12:10 PM

Tom - I don't have any Sharepoint experience, but .NET 2.0 apps *should* work fine since they are supported natively by 64-bit Windows. I wonder what's going on here.

Ismet - I'm glad you can get on our site now and thanks for the comment on the new skin.

Add a comment