moosetoga wrote:
It's an immediate 500 error. I'm using prefork and mod_php. Error logs are (frustratingly) empty although logging is turned on.
500 with a blank screen is definitely a PHP error. All we need is the error message.
If this is a standard LAMP stack on Debian or Ubuntu, see /etc/php5/apache2/php.ini and make sure that "log_errors" is "on". This will make PHP dump all of its errors to Apache's error log. Restart Apache to apply the new settings. If this doesn't work, you can also specify a different log file using the "error_log" setting. If you do this, make sure that the log file is writable by the www-data user.
Another option is to enable "display_errors" temporarily. This will simply dump error messages on the screen whenever an error occurs. This is often considered insecure because it might expose the internal workings of your server. But every shared host has this setting turned on, and every self-respecting WordPress hacker already knows the internal workings of a WordPress site, so I'd say the risk is relatively low.
moosetoga wrote:
Your comment on WP Super Cache just made me wonder if that module itself could have something to do with this...?
You could try disabling Super Cache for a day or two, but that will have a massive impact on performance. Serving a static file is hundreds of times faster than serving a fresh WordPress page.