Drupal Simplenews, MIME Mail, Blank Pages, and HTTP 500 errors

Well I've been banging my head against the wall trying to get the Simplenews module for Drupal working properly after having to move hosting providers.

The issue was partly of my own desire to run PHP 5.2 on CentOS 5.x. After moving providers I wanted to get my new VPS ready to run Drupal 7 when it's released and it requires PHP 5.2.

Anyway, all the sites moved over fine and after updating to PHP 5.2 via the instructions here http://wiki.centos.org/HowTos/PHP_5.1_To_5.2 my sites appeared to be running without incident. However when trying to send out a test newsletter the screen would go blank and no errors would appear in the Apache error logs for the site.

Without any logs I reverted to some low-level packet traces and straces. After strace'ing the httpd process I remembered I had the MIME Mail module installed. I checked the installed modules page in my Drupal site and the MIME Mail module also has a MIME Mail CSS Compressor. In the description of the module it said that it required the DOM extension for PHP. On a hunch, I compared the packages installed on my old VPS to my new one and the new one was missing the php-xml RPM. This is also the rpm that provides php-dom.

I yum-installed php-dom and the system installed php-xml, along with some required RPM packages. After restart the web server the test newsletter sent without issue.

Well, that's it. I hope this helps someone else. If you have MIME Mail CSS Compressor installed, make sure that you have the php-dom packages installed for your distro or you'll have issue.