pl: perl - fatals to browser

Beitrag lesen

Wenn HTML::Template vefügbar ist, tete mal das hier

#!/usr/bin/perl

use strict;
use warnings;
use HTML::Template;

# Alle Warnungen werfen Exceptions
$SIG{__WARN__} = sub { die @_ };

print eval{ # try
    # alle Prozesse zum Erzeugen
    # der Response, bei Fehlern wird
    # eine Exception geworfen
    header().content();
}           # catch
|| "Content-Type: text/plain; Charset=UTF-8\n\n$@";


sub header{
  "Content-Type: text/html; Charset=UTF-8\n\n";    
}

sub content{
  local $/ = undef;
  my $content = <DATA>;

  my $tt = HTML::Template->new(
    scalarref         => \$content, 
    die_on_bad_params => 1,
    vanguard_compatibility_mode => 1
  );
  
  $tt->param({
    title => "Der Titel meiner Seite",
    body  => "Körper zeigen..."
  });
  return $tt->output;
}

__DATA__
<!doctype html>
<header>
  <title> %title% </title>
</header>
<html>
<body>
    <p> %body% </p>
</body>
</html>

mit oder ohne provozierte Fehler. MFG