Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a ASP.NET website running on Windows Server 2003 and I would like to move it to a new server with a more recent OS. Would it be OK to jump directly to Windows Server 2012 or should I see how the site runs on Windows Server 2008 first?

share|improve this question
Just test it and see if it works. – ETL Mar 4 '14 at 16:28
I don't think anyone can give you a definitive answer. It depends what your web app is doing - is what it needs and what it is doing compatible with Windows Server 2012? If so, then it's not a bad idea. If not, then it's a bad idea. – ETL Mar 4 '14 at 16:36
Note that the "R2" part is fairly important – Server 2008 is basically Vista, 2008 R2 is 7, 2012 is 8, and 2012 R2 is 8.1. – ntoskrnl Mar 4 '14 at 22:06
up vote 14 down vote accepted

It certainly can work, but this is one area where it's entirely dependent upon your code. It may work, or it may not.

This is where doing a test upgrade would be a good thing to test out.

  1. Deploy the app in a new Server 2003 instance in a VM of some kind.
  2. Upgrade it directly to 2012.
  3. Figure out what needs to change to make it work.
  4. Repeat 1-3 until you have the process figured out and can do it reliably.
  5. Do it to your production code.
share|improve this answer
I didn't think Server 2012 supported upgrading directly from Server 2003. – Neil Mar 5 '14 at 12:33
@Neil This is what's called an educational experience. It's likely the effort to get a new instance on 2003 working at all will be 80% of the effort needed to deploy a fresh install on a fresh 2012. – sysadmin1138 Mar 5 '14 at 12:52

I really wouldn't bother upgrading anything to Server 2008 now, given that there are two newer major versions of Windows server that have been released since.

Your choices are really between 2008R2 or Server 2012/R2, at this point. I would advise that there's probably very little point in seeing how it runs on one version before trying to move it to another version, since there's not necessarily going to be any correlation there.

Pick what version you want to upgrade to and give it a shot. (With a backup/test copy first, of course.) If it works, great. Then you can do performance testing without it being a waste of time. Depending on those results, you'd do performance tuning and decide whether or not your application can function acceptably on the new platform.

If it doesn't work, then you can either try to get it working (compatibility-checking, troubleshooting and debugging), or try on a different version of the OS and see if it works there.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.