We're in the process of trying to decide where to host our GeoServer installation in production.
Are there any major pros or cons of hosting on windows vs. linux?
Personally I'd go with Linux over Windows for a server, some of that is experience on my part. But it is also things like being able to ssh to the Linux box from home to do late night reboots, log file checks etc.
I also find that Linux boxes are more stable than Windows boxes (no annoyingly "urgent" reboots for updates etc).
I would say this all boils down to what you have expertise in setting up and supporting. Since it runs in the application server of your choice there shouldn't be any difference with the app itself.
Ideally, there is no difference. The hosting platform is just that, a platform. You expect it to be nice and sturdy, hold up your application, and not interfere.
Of course if you application requires Windows or Linux then the choice is easy, but that's not your question.
Are you going to be managing your own host? Do you have a personal preference? The Windows Server, Linux server, and Java platforms are all mature enough now that I do not think there are any compelling technical reasons to select one over the other.
It really makes little difference and totally depends on your level of expertise in managing the different systems. If you dont know linux then there will be a steep learning curve over windows. Management of a standalone Windows Server is not that much different to managing a win7 machine, but if you want a domain, that is a different story.
We opted for windows servers (2008 Enterprise) and we turned off auto installation of updates. we use Rdp to manage the servers and you can easily run php apps on IIS as well. The PHP install is a no brainer nowadays. We are extremly happy with the setup and we have people involved in the management of the servers who needed only a small amount of training to get up to speed.