in reply to Sending mail on a bad server...
Yup. His server didn't have the modules, so I had
use lib '.';
with all the module folders being in the same folder as the script, and then all of my use <module name> statements, and for some reason just having those in the code either made the subroutine not load or it would give a 500 error, even after all the modules and the script was set to 755 setting.