This post is only for WordPress users who have upgraded to 2.6 on their Windows / IIS server and other users who use “index.php” in their permalinks and are encountering 404 errors after the upgrade.
The problem is already known to the WordPress folks and fixed, as described on the WordPress forums.
I’m posting this just to help out those Googling for answers, as I just recently was after upgrading the Enlight website and watching them go up in flames 🙂
To quote the WordPress support page, the bug is known and fixed for WordPress 2.6.1. In the meantime, here are temporary fixes. I verify that #2 restored my Windows / IIS 6.0 installation, BUT, I want to stress that this is a temporary solution only, as you will be changing your permalink structure, which is contrary to the very nature of “permalinks”. So, I recommend #3, which I also verify works, as it will leave your permalinks (which other sites are intended to be using) intact.
- If you’re using Linux/Apache on your webserver, you don’t really need the index.php anyway. Try removing it. The index.php thing was only meant for IIS servers, which don’t support mod_rewrite.
- If you need/want the index.php to be there, then on the Settings->Permalinks screen, add some values in for the category and tag bases. The words “category” and “tag” will do just fine. As long as they are not blank, this should work around the bug.
- (For advanced users only) If you want to patch the problem yourself, there is a fix available in trac ticket 7306. (Colin adds: The fix here is to integrate the 3 modified files from changeset 8365. If you don’t know how to do that, I strongly recommend you stick to option #2 until WordPress 2.6.1 comes out.)