Soderla, habe die Lösung nach einer intensiven Suche gefunden.
Und zwar muss der Pfad für die Ausführung des Skripts bei der Umgebungsvariablen gesetzt werden.
Dadurch wird das Setzen außerhalb unterbunden und nachfolgende Module/Objekte werden ausgeführt.
Ich habe mal mein Testskript angehängt, vielleicht kann es ja jemand mal gebrauchen.
Code:
#!/usr/bin/perl -wT
use strict;
use MIME::Lite;
use CGI qw(:standard);
use CGI::Carp qw(fatalsToBrowser);
print "Content-type: text/html\n\n";
my $betreff = "testbetreff";
my $inhalt = "Inhalt der mail";
my $adresse = "empfaenger\@provider.de";
# Ein paar Ausgaben als HTML-Seite
print "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
print "<html><head></head><body><p> Dies ist ein Test<br>";
#Nur ein Ausgabe des Pfades
print "$ENV{PATH}";
#Sicheres setzen
$ENV{PATH} = '/bin:/usr/bin';
#Mail UP Aufrufen; dort wird das Objekt erzeugt und die Mail versendet
&mail_senden("absender\@provider.de", $adresse, $betreff, $inhalt);
#paar Ausgaben und HTML-Ende
print "$adress<br>\n";
print "mail versendet<br>\n";
print "</p></body></html>";
# --> Up fuer das Mail senden
sub mail_senden
{
my $myMailAddress =$_[0]; # Absender
my $email_address =$_[1]; # Empfaenger
my $title =$_[2]; # betreff-zeile
my $body_message =$_[3]; # Inhalt EMail
# MIME::Lite mail object erzeugen
my $msg =MIME::Lite->new(
From => $myMailAddress,
To => $email_address,
Subject => $title,
Type => 'multipart/mixed',
);
# Inhalt der EMail
$msg->attach(
Type => 'TEXT',
Data => $body_message
);
$msg->send();
} # end sub Mail_File