in reply to Apache 2, Perl 5.8.0, Netware 6.5 server reboots

While I can't tell you why your server would reboot when your script die'd (although I don't think you want to be die'ing in a CGI)... your
open FILE, "file" || die "Cannot open $file";
will NEVER die, because || has higher precedence. Thus, it's actually doing
open FILE, ("file" || die "Cannot open $file");
The parentheses you had in before prevented the || from being evaluated first.