質問: 'aaa@xxxxx.co.jp' ; メールサーバーを指定してメール送信する記述方法などがありましたら、アドバイスをお願い致します。
回答: 以下のようにsmtpサーバのipアドレスを直接指定すればできるかもしれま せん。質問には直接関係ないですが、社外のメールクライアントからの smtp送信要求は、セキュリティではじかれませんか?#!/usr/bin/perl use warnings; use strict; use utf8; use encode; use net::smtp; # require authen::sasl module use net::smtp::ssl; use mime::entity; my $mail_to = 'xxx@xxx'; my $mail_from = 'yyy@yyy'; my $mail_subject = '件名'; my $mail_body = << 'end_mailbody'; 本文1 本文2 end_mailbody $mail_subject = encode( 'mime-header-iso_2022_jp', $mail_subject ); $mail_to = encode( 'mime-header-iso_2022_jp', $mail_to ); $mail_from = encode( 'mime-header-iso_2022_jp', $mail_from ); $mail_body = encode( 'iso_2022_jp', $mail_body ); my $mime = mime::entity->build( from => $mail_from, to => $mail_to, subject => $mail_subject, type => "text/plain; charset=iso-2022-jp", data => $mail_body ) or die "mime build error : $!"; my $smtp_server = 'stmp サーバの ip アドレス; my $smtp = net::smtp->new( $smtp_server, debug => 1 ) || die "smtp conn error : $!"; # smtp 認証ありのとき my $smtp_acc = 'xxxxx; my $smtp_pwd = 'yyyyy; $smtp->auth( $smtp_acc, $smtp_pwd ) or die "smtp auth error: $!"; $smtp->mail($mail_from); $smtp->to($mail_to); $smtp->data(); $smtp->datasend( $mime->stringify ) or die "data send error : $!"; $smtp->dataend() or die "data end error : $!"; $smtp->quit;