in reply to Taint Mode on an Old Web Server

Do you have physical access to the machine? Or can you otherwise retrieve the error log? The 500 error means that your script is sending something other than

content-type: text/html
as the very first thing. It's probably sending something like "Too late for -T at line 1" or something similar. Reading the error log will explain what is going wrong. You may need to use a special extension (i.e., not .cgi) for your scripts, an extension that the server knows should be passed off to perl -T, rather than perl by itself.

Perl behaves like this to avoid race conditions, whereby a script could be started up and changed between the time it was opened and the time the first line was read, or something like that.

Then again, you might just have a syntax error in your script. Try use CGI::Carp qw/fatalsToBrowser/.

--
g r i n d e r
just another bofh

print@_{sort keys %_},$/if%_=split//,'= & *a?b:e\f/h^h!j+n,o@o;r$s-t%t#u';