Mail::Sendmailの使い方
お世話になっております。
先日よりsendmailの調子がおかしくていろいろ調べているのですが煮詰まってしまったので詳しい方々にご教授頂きたいと思います。
先日よりMovable Type(CMS)でのメール送信のシステムが機能しなくなり、いろいろ調べているとサーバーのsendmailはきちんと機能しているのですが、perlのモジュールMail::Sendmailがうまく作動していないようなのです。
perlでは、
open (SENDMAIL, "/usr/lib/sendmail -t -i");
(中省略)
close(SENDMAIL);
という原始的な方法ではメールが送信されるのですが、
use Mail::Sendmail;という使い方では、エラーにはなりませんがずっと読み込み中…状態が続いてメールが送信されませんでした。
Movable TypeでもMail::Sendmailが利用されていますのでここが原因かと思いますが、Mail::Sendmailを使用するにあたって注意すべきこと、または設定すべきことはどのようなことがあるでしょうか?さしあたりどこをチェックしてよいのかわからなくて困っています。
よろしくお願いします。
Mail::Sendmailを利用して作成したスクリプトは以下のようなものです。
#!/usr/bin/perl
use strict;
use warnings;
use Mail::Sendmail;
use Encode;
use utf8;
my $subject = "テスト";
my $message = "テストです。ほげほげ。";
$subject = encode("MIME-Header-ISO_2022_JP", $subject);
$message = encode("iso-2022-jp", $message);
my %mail = (
"Content-Type" => 'text/plain; charset="iso-2022-jp"',
To => 'to@example.com',
From => 'from@example.com',
Subject => $subject,
Message => $message,
);
sendmail(%mail);
exit;
お礼
回答ありがとうございます。 ファイヤーウォールの設定をした業者さんに もう一度詳しく聞いてみたいと思います。 (BlatJはその業者さんに進められたんですが・・・)
補足
昨日、やっと送信テストが成功しました。 まずファイアーウォールの設定をした業者さんに話を聞く所から初めました。で、インストール先をファイヤーウォールに設定し、なおかつ送信したいデータファイルをBlatJ.exeが存在するディレクトリと同じ階層に置いてMS-Dosコマンドで実行したら成功しました。 これを活用してフォームメールのCGIを作りたいと思います。ほんとうにありがとうございました。