Windows Server 2008 x64 IIS7 random errors and binary corruption with VNC 4
My usual process for deploying Windows Server boxes involves the installation of VNC for remote console management. I know Remote Desktop is the best practice way to do this but as they say, old habits die hard.
When I recently deployed a Windows Server 2008 R2 x64 box for the purposes of running IIS7.5 at another site, I followed my usual process and of course installed VNC Enterprise (4.5.1).
We have a fairly modest application server farm so investing time and effort in deployment techniques for .NET 4 web applications to just a few servers seems a little like overkill so we generally just use VNC’s rather useful copy/paste to dump the binaries on the box. Now we’ve been using this method on our Windows Server 2003 R2 IIS6 application servers for a couple of years without any issues whatsoever. Again, I realise this isn’t “best practice” but there’s little point jumping through hoops and over-complicating matters as it just means spending more time than is really required.
However, after deploying several copies of our application to our IIS6 app servers and then the same copy of the application to the first IIS7.5 app server, we were a little perplexed to see that the IIS7.5 box wasn’t playing ball and was giving strange errors when we tried to access the back-end services. The error seemed to take us in the direction of a 32-bit application incompatibility but even after forcing 32-bit (WOW64 mode) for the application pool, we still got the same error message.
All this occurred on a Sunday and obviously being in weekend mode, I didn’t investigate quite as thoroughly as I should have. The box is pre-production so it wasn’t a huge concern that the app didn’t work though it was cause for some concern and would require investigation to resolve.
After discovering a really useful alternative tool to BgInfo called DesktopInfo, I thought I’d copy it over to the Windows Server 2008 R2 x64 app server this morning to give it a try. The server isn’t in production yet so it seemed the perfect time to give it a go. I fired up VNC and simply copied and pasted the folder with the binary over to the target server. After the copy completed successfully, I executed the binary only to be told it wasn’t a valid Win32 application. Err, what? OK, I know this is a 64-bit OS but it’ll still run 32-bit binaries… oh… hang on a minute!
I immediately dropped the VNC connection, fired up Remote Desktop and re-copied the folder, executed the binary and had no problems at all so I re-copied the previously failing application to the Windows Server 2008 R2 x64 box using Remote Desktop. I fired up the application in Internet Explorer and it worked without a problem!
Obviously I’ll have to write this one down to experience. Maybe the latest version of VNC Enterprise 4.5.4 has rectified the binary file copy corruption that seems to occur when using the copy/paste functionality on a target that is Windows Server 2008 R2 x64 but until I’ve tested that, I think I’ll stick to Remote Desktop.
The old habit might just have to die after all…