10 Ways to Improve WordPress Performance on Windows
Tip #4 Use PHP 5.3 (or later) compiled with VC9
This is another huge one. HUGE! You’ll want to use the VC9 version of PHP because it’s compiled with the newer compiler and allows PHP to take advantage of the improvements made in Windows over the past several years. http://windows.php.net/
Tip #5 Use WebPI to install PHP
This is just a quickie tip for you. But the other issue we commonly saw with PHP is that when people installed it, they really didn’t know how to install it properly. Microsoft released the “Web Platform Installer” some time ago (also called the WebPI) and this provides a more standardized, best practices approach to installing PHP (it will also install the latest build with the VC9, non thread safe binaries for you and configure FastCGI as well .. that’s 4 birds, one stone!). http://www.microsoft.com/web/platform/
Tip #6 Enable WinCACHE
This is the next great improvement. The Windows Cache Extension for PHP is a PHP accelerator that allows to PHP applications on Windows to use PHP Opcode Cache, File Cache, User Cache and Session Handling. You can learn more about WinCACHE here: http://us.php.net/wincache
Tip #7 Use the newest beta build of WinCACHE
There’s a bug in the release version of WinCACHE 1.1 that requires you to reset IIS in order to do WordPress and Plugin upgrades. Basically your plugin files appear locked and you’re not able to run the installer. You can read about that here: http://ruslany.net/2011/04/wincache-and-wordpress-plugin-upgrade-problem/
So you’ll want to go grab the latest version of WinCACHE from the link in Ruslan’s blog (he’s the man when it comes to PHP on Windows/IIS BTW)
Tip #8 Pretty Permalinks JUST WORK!
Say what?!? That’s right, the biggest compliant you hear about WordPress on Windows is “Well my Permalinks won’t work and I need those for SEO so Windows is Useless.” That really was never the case thanks to our friends at Helicontech.com and on Windows Server 2008 thanks to the URL Rewrite Engine it’s not the case now either. In fact, WordPress out of the box supports the URL Rewrite Engine today and will automatically update the web.config for your site (it’s like the .htaccess/.htconfig file on steroids) for you!
Tip #9 Use W3 Total Cache (W3TC)
I love this plugin! You see, I’m all about KISS, Keep It Simple Stupid and W3 Total Cache does that for us. Once you install WinCACHE you still need to tell your app to use it as the OpCode cache and W3 Total Cache supports WinCACHE (and Windows of course) and makes this easy to do. You just click the drop down the box and select it. Plus, it’s very smart to use a caching plugin with WordPress regardless of what platform you run on and this is by far one of the best. You know how to get it of course, but if not: http://wordpress.org/extend/plugins/w3-total-cache/ oh and as your site grows and scales you’ll want to integrate it with a CDN right? W3TC makes that easy too!
Tip #10 Host With An Awesome Web Host (AppliedI.net, if you didn’t figure it out)
This is really the biggest thing. You need to host your WordPress site with a hosting provider that knows the Windows Platform, IIS, Microsoft, PHP and of course WordPress. Believe it or not, just because your webhost was able to stand up a Windows Server with PHP on it, they aren’t necessarily a Windows Host. Applied Innovations (www.appliedi.net) is the company I founded back in 1999 and I’ve been running PHP on Windows since 2000/2001. Today we host about 35,000 domains for 10,000 developers just like you! We use this application, (I use it for this blog) and we know it. So find a host that knows the platform and knows the application. BTW, about 30% of all new sites we deploy today are deploying some flavor of PHP on their hosting and most commonly that’s WordPress!
Oh and one last thing, if you want to give us a try I’ll give you the first 6 months of hosting for free: https://appliedi.net/webmatrix
Bonus Tip: WebMatrix! It just makes things easy for you. It builds out an entire dev environment locally on your desktop and allows you to click one button to publish and it will send up your files, set permissions and even publish your database for you. It will also give you a single button so you can pull down your site as easily as you published it too! you can get it from that link the previous tip.