6

My client has most of the applications in .NET, he is changing his hosting provider, now he is asking for advice whether he should use the Windows 2008 with IIS 7.0 or good old Windows 2003 with IIS 6.0

What advantage does 7.0 offer over 6.0?

6 Answers 6

11

.Net is native in IIS7 rather than being an ISAPI filter. That gets you pipelining and greater configuration control via web.config. Another consequence is that URL permissions applied in web.config apply to all resources and not just ones mapped to the ASPNET ISAPI filter as in IIS6. As a consequence, if you want to use ASPNet MVC, it is much easier in IIS7. You are also able to combine HttpModules with non-.NET technologies like PHP. For example, you can use a .NET URL authorization or Microsoft's URL Rewrite Module with something like PHP and it will work just fine.

5

II7 run .net apps faster than 2003. In addition there are more features avilable to the developer. Stackoverflow might be of more help there but

From http://weblogs.asp.net/scottgu/archive/2007/04/02/iis-7-0.aspx

1) You can now use ASP.NET Forms Authentication, Membership/Roles, and any other feature for all requests to the server (for example: .htm, .php, and .jsp files)

2) You can now easily re-write the URL of any web request and/or modify the request in interesting ways

3) You can replace or extend any existing IIS feature using VB or C# (for example: you could remove the built-in directory listing module and plug-in your own).

Administratively I've found IIs7 to be much easier to manage over iis6

4

That would be a no-brainer for me: IIS 7. I just say two words: Integrated Pipeline.

Here is an interesting Microsoft TechNet article: Top 10 Performance Improvements in IIS 7.0.

4

IIS7 is the biggest update to IIS in a long time, and includes many fundamental changes. By and large this is a good thing, as the new version is much faster, more reliable, more modular, and generally just better.

However, that comes at a price. An application that's set up using IIS6 may take a little extra configurationt to get working as expected in IIS7. You'll have to decide if that risk is worth the benefit.

2

Another consideration that you may want to take into account is what sort of Apps your client will be running in the future. Currently it's much easier to develop an ASP.Net MVC application to run on IIS 7 as opposed to IIS 6. In a nutshell it just requires some custom IIS configuration to get it to work, but it is an extra step that needs to be done whereas with IIS 7 it'd just work.

All other things being the same, I'd go for Server 2008/IIS 7 simply due to the more recent updates.

Another thing you might want to consider is how long the server will be deployed. If you're thinking longer-term, that's be another plus for 2008. (As 2003 will be EOL'd much sooner than 2008..)

2

We've been running IIS7 for a while now and I would recommend it. Distributed, delegated configuration is huge. For each web site you create, you have configuration settings in web.config. You can delegate change control on a site-by-site basis and a feature-by-feature basis to people. That way, you can give some configuration control to developers over the site they are working on without giving them access to other sites and without giving them access to the IIS manager (like you have to do in IIS6). There are also some very nice features out of the box like URLScan and the new integrated diagnostics.

On the downside, the new manager UI takes a little bit of getting used to if you've been administering IIS6 for a while, but overall it's a small price to pay.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .