I'm running the latest (and constantly updated) version of WordPress on Nginx.
Every now and then I wake up to a site full of 404 errors. The fix is to go into the permalinks and just save the settings on that page. This typically fixes the issue for a day or so.
This was happening to another site of mine on the same server. It suddenly stopped being an issue. My point here is that not only do I not know what's causing it, but I can't even tell what's fixing it.