投稿日:2002年09月08日 作成鷹の巣

No.5088 フォームメールからメールを送ってもSMTPサーバにアクセスログがありません。



フォームメールからメールを送ってもSMTPサーバにアクセスログがありません。

No.5088 投稿時間:2002年09月08日(Sun) 01:16 投稿者名:おざき URL:http://ozaki-y.com

KENT WEBさんのPOSTMAILと、「にゃぁぁぁぁぁぁぁ!」さんのMS-Windows用sendmailを使い、
フォームメールの設定を行っているのですが、全く動作しません。
単体テストを行った結果は、SMTPサーバのログには何もなく、mailtest.txtが
メモ帳で表示されただけでした。
何度も設定とかは見直しましたが、さっぱりわかりません。
どなたかよろしくお願いいたします。


最初に見るのは、sendmail.cgi の設定ミス

No.5089 投稿時間:2002年09月08日(Sun) 07:43 投稿者名:OAK URL:

> KENT WEBさんのPOSTMAILと、「にゃぁぁぁぁぁぁぁ!」さんのMS-Windows用sendmailを使い、
> フォームメールの設定を行っているのですが、全く動作しません。
> 単体テストを行った結果は、SMTPサーバのログには何もなく、mailtest.txtが
> メモ帳で表示されただけでした。
> 何度も設定とかは見直しましたが、さっぱりわかりません。
> どなたかよろしくお願いいたします。

一番考え易いのは、sendmail.cgi の設定ミス。
sendmail.cgi を単独でテストしてください。
単独でテストの方法がわからなければ、40行目付近の #◇設定ここまで まで
書いてください。自分のメールアドレスぐらいは伏せ字でもかまいませんが。


sendmail.cgi の設定内容。

No.5114 投稿時間:2002年09月08日(Sun) 23:36 投稿者名:おざき URL:http://ozaki-y.com

> > KENT WEBさんのPOSTMAILと、「にゃぁぁぁぁぁぁぁ!」さんのMS-Windows用sendmailを使い、
> > フォームメールの設定を行っているのですが、全く動作しません。
> > 単体テストを行った結果は、SMTPサーバのログには何もなく、mailtest.txtが
> > メモ帳で表示されただけでした。
> > 何度も設定とかは見直しましたが、さっぱりわかりません。
> > どなたかよろしくお願いいたします。
>
> 一番考え易いのは、sendmail.cgi の設定ミス。
> sendmail.cgi を単独でテストしてください。
> 単独でテストの方法がわからなければ、40行目付近の #◇設定ここまで まで
> 書いてください。自分のメールアドレスぐらいは伏せ字でもかまいませんが。

ありがとうございます。以下のようにしています。
#======================================================================#
# sendmail.pl for ActivePerl 5.6.1.628
#======================================================================#
# 書式 : perl sendmail.pl [-itfr] [address]
# 配布元: http://wan.magical.gr.jp
#======================================================================#
# 設定

#◇SMTPサーバ
$smtp = "127.0.0.1";

#◇標準 FORM アドレス
$from = 'webpage@ozaki-y.com';

#◇ エラーログの作成(sendmail.log)
$logs = 1 ;

#◇ タイムアウト秒数 (デフォルト推奨)
$timeout = 20;

#◇ アラームファイル (デフォルト推奨)
$alarm =".alarmpid";


#======================================================================#
#◇POP before SMTPを使用する yes=1 no=0
$pop_before_smtp = 1;

#◇ POP3サーバアドレス
$pop3 = "127.0.0.1";

#◇POP3接続用 USER-ID/PASSWORD
$user = 'webpage';
$pass = 'password';


#◇設定ここまで


自宅SMTPサーバーを使用する場合のsendmail.cgi の設定内容。

No.5131 投稿時間:2002年09月09日(Mon) 06:23 投稿者名:鷹の巣 URL:http://sakaguch.com/

> #◇POP before SMTPを使用する yes=1 no=0
> $pop_before_smtp = 1;

$pop_before_smtp = 0;
でも良いです。

> #◇ POP3サーバアドレス
> $pop3 = "127.0.0.1";
>
> #◇POP3接続用 USER-ID/PASSWORD
> $user = 'webpage';
> $pass = 'password';

$pop_before_smtp = 0;
が場合は、$pop3と$userと$passは、初期値でも良いです。

# $smtp = "127.0.0.1"となっていることから、Webサーバー(AN HTTPD)とSMTPサーバー(ArGosoft Mail Server)は、
# 同一のPC機に入っていますよね。
# $smtp = "127.0.0.1"の場合は、上記の他の設定が間違っていてもSMTPサーバーには、アクセスログが残ります。


コマンドラインから起動してメールが届きませんか。

No.5090 投稿時間:2002年09月08日(Sun) 07:56 投稿者名:鷹の巣 URL:http://sakaguch.com/

> KENT WEBさんのPOSTMAILと、「にゃぁぁぁぁぁぁぁ!」さんのMS-Windows用sendmailを使い、
> フォームメールの設定を行っているのですが、全く動作しません。
> 単体テストを行った結果は、SMTPサーバのログには何もなく、mailtest.txtが
> メモ帳で表示されただけでした。


こちら
http://sakaguch.com/CGIsendmail.html#6
の「おまけ(sendmail.cgiの単体試験方法)」通りにして、コマンドラインから
D:\WWW\public_html\cgi\sendmail>D:\Perl\bin\Perl.exe < mailtest.txt sendmail.cgi -t
と入力して、メールが届きませんか。こちら
D:\WWW\public_html\cgi\sendmail>D:\Perl\bin\Perl.exe sendmail.cgi -t < mailtest.txt
で実施しても同じですか?


> 何度も設定とかは見直しましたが、さっぱりわかりません。


OSがWindowsだと思いますが、WebサーバーやSMTPサーバーの詳細も教えて下さい。こちら
http://sakaguch.com/CGIsendmail.html
の設定通りなのでしょうか。(perlis.dllは、絶対にダメです。perl.exeを使用して下さい。)


ここの
http://sakaguch.com/CgiFaq.html#A150
メール送信Perlスクリプトその1(Net::SMTPモジュール版)
http://sakaguch.com/PerlSample/NETsmtpMail1.pl.txt
も一度、コマンドラインから
c:\> C:\Perl\bin\perl.exe X:/.../NETsmtpMail1.pl
の様に起動して試して、結果をご連絡下さい。(NETsmtpMail1.plは、postmail.cgiのフォルダに入れて下さい。jcde.plが必要です。)

# postmail.cgiも「Net::SMTPモジュール」を使用した改造例をWebページに記載した方が良いかも知れませんね。


現状の環境説明。

No.5115 投稿時間:2002年09月08日(Sun) 23:54 投稿者名:おざき URL:http://ozaki-y.com

> > KENT WEBさんのPOSTMAILと、「にゃぁぁぁぁぁぁぁ!」さんのMS-Windows用sendmailを使い、
> > フォームメールの設定を行っているのですが、全く動作しません。
> > 単体テストを行った結果は、SMTPサーバのログには何もなく、mailtest.txtが
> > メモ帳で表示されただけでした。
>
>
> こちら
> http://sakaguch.com/CGIsendmail.html#6
> の「おまけ(sendmail.cgiの単体試験方法)」通りにして、コマンドラインから
> D:\WWW\public_html\cgi\sendmail>D:\Perl\bin\Perl.exe < mailtest.txt sendmail.cgi -t
> と入力して、メールが届きませんか。こちら
> D:\WWW\public_html\cgi\sendmail>D:\Perl\bin\Perl.exe sendmail.cgi -t < mailtest.txt
> で実施しても同じですか?
>
>
> > 何度も設定とかは見直しましたが、さっぱりわかりません。
>
>
> OSがWindowsだと思いますが、WebサーバーやSMTPサーバーの詳細も教えて下さい。こちら
> http://sakaguch.com/CGIsendmail.html
> の設定通りなのでしょうか。(perlis.dllは、絶対にダメです。perl.exeを使用して下さい。)
>
>
> ここの
> http://sakaguch.com/CgiFaq.html#A150
> メール送信Perlスクリプトその1(Net::SMTPモジュール版)
> http://sakaguch.com/PerlSample/NETsmtpMail1.pl.txt
> も一度、コマンドラインから
> c:\> C:\Perl\bin\perl.exe X:/.../NETsmtpMail1.pl
> の様に起動して試して、結果をご連絡下さい。(NETsmtpMail1.plは、postmail.cgiのフォルダに入れて下さい。jcde.plが必要です。)
>
> # postmail.cgiも「Net::SMTPモジュール」を使用した改造例をWebページに記載した方が良いかも知れませんね。

ありがとうございます。
OSがWindows2000です。
WebサーバーはAN HTTP Dです。一部設定は異なっています。
ドキュメントルートがD:\www\spooky_house\public_html
実行プログラムがc:\perl\bin\perl.exe
になっています。
postmailの設定では上記の異なる部分は反映していますが、これがいけないのでしょうか?
SMTPサーバーはArGoSoftです。DNSサーバ以外は全て同じです。
メール送信Perlスクリプトその1(Net::SMTPモジュール版)についてはこれからテストしてみます。


コマンドラインから、色々検査しましょうね。

No.5132 投稿時間:2002年09月09日(Mon) 06:25 投稿者名:鷹の巣 URL:http://sakaguch.com/

> postmailの設定では上記の異なる部分は反映していますが、これがいけないのでしょうか?

ご使用の環境については、よく解りました。
postmailの設定が悪いのかどうかは、現時点では、解りませんが、異なる部分は反映すべきです。
その前にコマンドラインから、色々検査しましょうね。


X:/.../NETsmtpMail1.plの意味がよくわからなかったのですが。

No.5116 投稿時間:2002年09月09日(Mon) 00:45 投稿者名:おざき URL:http://ozaki-y.com

> > KENT WEBさんのPOSTMAILと、「にゃぁぁぁぁぁぁぁ!」さんのMS-Windows用sendmailを使い、
> > フォームメールの設定を行っているのですが、全く動作しません。
> > 単体テストを行った結果は、SMTPサーバのログには何もなく、mailtest.txtが
> > メモ帳で表示されただけでした。
>
>
> こちら
> http://sakaguch.com/CGIsendmail.html#6
> の「おまけ(sendmail.cgiの単体試験方法)」通りにして、コマンドラインから
> D:\WWW\public_html\cgi\sendmail>D:\Perl\bin\Perl.exe < mailtest.txt sendmail.cgi -t
> と入力して、メールが届きませんか。こちら
> D:\WWW\public_html\cgi\sendmail>D:\Perl\bin\Perl.exe sendmail.cgi -t < mailtest.txt
> で実施しても同じですか?
>
>
> > 何度も設定とかは見直しましたが、さっぱりわかりません。
>
>
> OSがWindowsだと思いますが、WebサーバーやSMTPサーバーの詳細も教えて下さい。こちら
> http://sakaguch.com/CGIsendmail.html
> の設定通りなのでしょうか。(perlis.dllは、絶対にダメです。perl.exeを使用して下さい。)
>
>
> ここの
> http://sakaguch.com/CgiFaq.html#A150
> メール送信Perlスクリプトその1(Net::SMTPモジュール版)
> http://sakaguch.com/PerlSample/NETsmtpMail1.pl.txt
> も一度、コマンドラインから
> c:\> C:\Perl\bin\perl.exe X:/.../NETsmtpMail1.pl
> の様に起動して試して、結果をご連絡下さい。(NETsmtpMail1.plは、postmail.cgiのフォルダに入れて下さい。jcde.plが必要です。)
>
> # postmail.cgiも「Net::SMTPモジュール」を使用した改造例をWebページに記載した方が良いかも知れませんね。

index.htmlにコマンドプロンプトを貼り付けました。
X:/.../NETsmtpMail1.plの意味がよくわからなかったのですが。
この操作であっているのでしょうか?
jcode.plはpostmailのフォルダに入っています。
よろしくお願い致します。


おざきさんの環境では...。

No.5134 投稿時間:2002年09月09日(Mon) 06:38 投稿者名:鷹の巣 URL:http://sakaguch.com/

> X:/.../NETsmtpMail1.plの意味がよくわからなかったのですが。
> この操作であっているのでしょうか?
> jcode.plはpostmailのフォルダに入っています。

おざきさんの環境では、
D:\www\spooky_house\public_html\cgi\sendmailというフォルダにNETsmtpMail1.plとjcode.plを入れておいて、
NETsmtpMail1.plの設定部分を下記の様に変更して下さい。
$mail_server = '127.0.0.1'; # SMTPサーバー名(自宅SMTPサーバーの場合はLAN内のブライベートアドレスでも可)
$mail_from = 'webmaster@example.com'; # 送信元メールアドレス
$mail_to = 'user@example.com'; # 宛先メールアドレス

その上で、コマンドプロンプト画面(DOS窓の様な画面)から、
X:\ > D:↓
D:\ > cd \www\spooky_house\public_html\cgi\sendmail↓
D:\www\spooky_house\public_html\cgi\sendmail > C:\Perl\bin\perl.exe NETsmtpMail1.pl↓
と入力して、perl.exeのコマンドラインパラメータ(引数)として、NETsmtpMail1.plを与えて、実行して下さい。

# 拡張子がplになっているものは、必ず、上記の様な起動方法となります。
# 拡張子がcgiになっているものは、(Perlで書いたものとは限りませんが)基本的にWebサーバーから、実行して下さい。


c:\perl\bin\perl.exeと入力すると、アクセスが拒否されました。と表示されました。

No.5117 投稿時間:2002年09月09日(Mon) 01:07 投稿者名:おざき URL:http://ozaki-y.com

d:\www\spooky_house\public_html\cgi\sendmail>c:\perl\bin\perl.exeと入力すると、
アクセスが拒否されました。と表示されました。
現在HPにアクセスすると、サーバ機の方にc\perl\bin\perl.exeは有効なWin32アプリケーションではありません。
と表示されます。
perlがおかしいのでしょうか?


環境変数の再確認。

No.5135 投稿時間:2002年09月09日(Mon) 06:46 投稿者名:鷹の巣 URL:http://sakaguch.com/

> d:\www\spooky_house\public_html\cgi\sendmail>c:\perl\bin\perl.exeと入力すると、
> アクセスが拒否されました。と表示されました。
> 現在HPにアクセスすると、サーバ機の方にc\perl\bin\perl.exeは有効なWin32アプリケーションではありません。
> と表示されます。


1.デスクトップ画面の「マイコンピュータ」のアイコンを右クリックし、「プロパティ」を左クリックし、「詳細」タブを開いて下さい。
2.下の方に「システム環境変数(S)」というのがありますが、この中の変数「ComSpec」と「Path」の内容を教えて下さい。

Windows 2000 Professionalで普通一般には、
「ComSpec」= C:\WINNT\system32\cmd.exe
「Path」=C:\Perl\bin\;C:\WINNT\system32;C:\WINNT;・・・
という様になっています。


> perlがおかしいのでしょうか?


Perlは、C:\Perlというフォルダを指定してインストールしますと、C:\Perl\binというフォルダにperl.exeが存在します。
3.確かにこのフォルダにperl.exeが存在すれば、環境変数「Path」には、C:\Perl\bin\;が記述されている筈です。
4.環境変数「ComSpec」が C:\...\command.comなんかになっていなければ良いのですが。


拡張子の割付ができていないからでしょうか?

No.5119 投稿時間:2002年09月09日(Mon) 02:23 投稿者名:おざき URL:http://ozaki-y.com

新しい拡張子で関連付けられているファイルタイプの "Perl File" が一覧になく、
設定できていません。
アクセスログが動いていたので、問題ないのかと思っていたのですが。
ここらも関係しているのでしょうか?
すみませんが、よろしくお願い致します。


拡張子の関連付けとは、無関係です。

No.5136 投稿時間:2002年09月09日(Mon) 07:21 投稿者名:鷹の巣 URL:http://sakaguch.com/

> 新しい拡張子で関連付けられているファイルタイプの "Perl File" が一覧になく、
> 設定できていません。

もし、拡張子のplやcgiをperl.exeに関連付けするのであれば、ファイルタイプの一覧に「ない」のではなく、新規に追加し「作成」するのです。


> アクセスログが動いていたので、問題ないのかと思っていたのですが。
> ここらも関係しているのでしょうか?

拡張子の関連付けとは、無関係です。
拡張子の関連付けの意味は、拡張子のplやcgiのファイルを
1.コマンドラインからpostmail.cgiを起動した場合
C:\ > D:\www\spooky_house\public_html\cgi\postmail\postmail.cgiと入力した場合、
C:\ > C:\Perl\bin\perl.exe D:\www\spooky_house\public_html\cgi\postmail\postmail.cgi
とperl.exeからpostmail.cgiのファイルを読み込み、実行する仕組みです。
2.エクスプローラ画面からpostmail.cgiをクリックした場合
C:\Perl\bin\perl.exe D:\www\spooky_house\public_html\cgi\postmail\postmail.cgi
を一気に実行する仕組みです。

postmail.cgiのソースファイルをよく編集する人は、拡張子のplやcgiをperl.exeに関連付けするのはなく、
テキストエディタ(メモ帳もこのたぐいです)に関連付けしていますので、実行不能とは無関係です。

私は、テキストエディタに関連付けしています。
よく使用する(例えば)NETsmtpMail1.pl等は、エクスプローラ画面から右クリックし、
ショートカットを作成します。
今、D:\www\spooky_house\public_html\cgi\sendmail\NETsmtpMail1.plの場合で説明しますと、
ショートカットのプロパティで、「ショートカット」タブの「リンク先」を見ると
D:\www\spooky_house\public_html\cgi\sendmail\NETsmtpMail1.pl
という様になっている筈です。これの前にC:\Perl\bin\perl.exeをつけて、
C:\Perl\bin\perl.exe D:\www\spooky_house\public_html\cgi\sendmail\NETsmtpMail1.pl
とすれば、一丁上がりです。
以降は、NETsmtpMail1.plの「ショートカット」アイコンをクリック(ダブルクリック)すれば、
作業フォルダがD:\www\spooky_house\public_html\cgi\sendmailに移動し、
C:\Perl\bin\perl.exe D:\www\spooky_house\public_html\cgi\sendmail\NETsmtpMail1.pl
が起動され、コマンドプロンプト画面(DOS窓の様な画面)が2秒程開いて、実行後、画面が閉まります。

但し、この欠点は、エラーが表示されてPerlの実行が終了すると画面が直ぐに閉まって、エラー表示が見えないことです。

# 画面が直ぐに閉まらない方法をご存知の方は、教えて下さい。


sendmailのテストはできましたが。。。

No.5148 投稿時間:2002年09月09日(Mon) 19:50 投稿者名:おざき URL:http://ozaki-y.com

環境変数の確認しました。
「ComSpec」= C:\WINNT\system32\cmd.exe
「Path」=C:\Perl\bin\;C:\WINNT\system32;C:\WINNT;・・・
問題なさそうでしたのでperlを一度アンインストールし、Dにインストールをし直し、
CGIも再度DLし、設定を見直した結果sendmailのテストはうまく出来ました。
ありがとうございました。
が、postmailのテストがうまくできません。
ブラウザからhttp://192.168.1.11/cgi/postmail/postmail.cgi?mode=check と入力するのですが、
ページを表示できません。と表示されます。
postmail.cgiの中の注4だけはコメント行しないようにしているのですが、他の個所にもテストの際に変更が必要なのでしょうか?


postmail.cgi?mode=checkを行う方法(非推奨)。

No.5152 投稿時間:2002年09月09日(Mon) 23:24 投稿者名:鷹の巣 URL:http://sakaguch.com/

> が、postmailのテストがうまくできません。
> ブラウザからhttp://192.168.1.11/cgi/postmail/postmail.cgi?mode=check と入力するのですが、
> ページを表示できません。と表示されます。
> postmail.cgiの中の注4だけはコメント行しないようにしているのですが、他の個所にもテストの際に変更が必要なのでしょうか?


こちら
http://sakaguch.com/CGIsendmail.html
の項の4の注の2をご覧願います。チェックする場合は、
$mailprog = 'D:/Perl/bin/Perl.exe D:/WWW/public_html/cgi/sendmail/sendmail.cgi';

$mailprog = 'D:/WWW/public_html/cgi/sendmail/sendmail.cgi';
にしないとチェックに成功しません。
また、ブラウザの設定で、「ツール」-「インターネットオプション」-「詳細タブ」の設定で、ブラウズという項目に
「HTTPエラーメッセージを簡易表示する」という内容がありますが、
普通、CGIを試験される方は、チェックをはずしています。
上記のpostmail.cgiのチェックを行われるとpostmail.cgiまでの絶対パスが表示されますので、このチェック回路は、改造して
動作しない様にして下さい。


postmailのチェック終了しました。

No.5153 投稿時間:2002年09月10日(Tue) 05:51 投稿者名:おざき URL:http://ozaki-y.com

このような表示がでましたけど、これでよろしいのでしょうか?
Check Mode
メールソフトパス:OK
jcode.plバージョンチェック:バージョンOK (v 2.13)
$PrivateSegAddr = '192.168.1.0';の'が抜けていました。
変更した時に多分消してしまったのだと思います。

$mailprog = 'D:/Perl/bin/Perl.exe D:/WWW/spooky_house/public_html/cgi/sendmail/sendmail.cgi'; #<---注)1
# $mailprog = 'D:/WWW/public_html/cgi/sendmail/sendmail.cgi'; #<---注)2
#if ($in{'mode'} eq "check") { &check; } <--- 必ず、コメント行にして下さい。注)4
#unless (-e $mailprog) { &error("メールプログラムのパスが不正です"); } <--- 必ず、コメント行にして下さい。注)5
チェック終了後上記のように変更し、フォームメールの送信、リセットを行ってみましたが、
何も動作しません。
sendmailとpostmailのテストは完了しましたので、後はHTMLが間違っているということでしょうか?


postmail.cgiとsendmail.cgiの単体試験済で、perl.exeの標準入出力のパラメータ渡しが出来ないのは、原因不明。

No.5164 投稿時間:2002年09月10日(Tue) 19:33 投稿者名:鷹の巣 URL:http://sakaguch.com/

> このような表示がでましたけど、これでよろしいのでしょうか?

OKです。

> チェック終了後上記のように変更し、フォームメールの送信、リセットを行ってみましたが、
> 何も動作しません。
> sendmailとpostmailのテストは完了しましたので、後はHTMLが間違っているということでしょうか?


メール送信Perlスクリプトその1(Net::SMTPモジュール版)
http://sakaguch.com/PerlSample/NETsmtpMail1.pl.txt
も一度、コマンドラインから
c:\> C:\Perl\bin\Perl.exe D:/WWW/spooky_house/public_html/cgi/sendmail/NETsmtpMail1.pl
の様に起動して試して、結果をご連絡下さい。(NETsmtpMail1.plは、postmail.cgiのフォルダに入れて下さい。jcde.plが必要です。)

★上記の結果が知りたかったのですが。★

# postmail.cgiも「Net::SMTPモジュール」を使用した改造例をWebページに記載した方が良いかも知れませんね。

ということで、postmailを改造した
http://sakaguch.com/cgi/Webmail/postmail/postmail.cgi.txt
を作ってみました。一度、試して見て下さい。

sendmail.cgiは、postmail.cgiから、perl.exeを通して、sendmail.cgiに標準入出力でメールデータを渡しているのですが、
postmail.cgiとsendmail.cgiの単体試験がOKで、メール送信が出来ないということは、この標準入出力によるパラメータ渡しが
うまくいっていないということです。

AN HTTPDの「一般タブ」の「拡張子plとcgi」で、指定している実行プログラムがperlis.dllになっていると
標準入出力によるパラメータ渡しが出来ないのは、解っているのですが、perl.exeになっていて、うまく行かないのは、
私の方では、再現しないので、解りません。

あきらめて、試験用postmail
http://sakaguch.com/cgi/Webmail/postmail/postmail.cgi.txt
でご使用願います。
但し、このスクリプトをご使用になるには、Perlのスクリプトを全て読解する必要があります。
なぜなら、postmailのバージョンが上がっても私は、この試験用postmailを保守しませんし、
kent-webのスクリプトの再配布を行うつもりは、全くありません。(再配布を行うには、事業者登録が必要だとか)


NETsmtpMail1.plの試験結果。

No.5171 投稿時間:2002年09月10日(Tue) 23:43 投稿者名:おざき URL:http://ozaki-y.com

> ★上記の結果が知りたかったのですが。★の件ですが、
現在NETsmtpMail1.plとjcode.plがpostmailとsendmail共に入っている状態ですが、
このままで起動していいのですか?
とりあえずこのまま起動した結果は、
Can't Locate ./jcode.pl at d:/www/spooky_house/public_html/cgi/sendmail/NETsmtpMail1.pl line14.
となりました。NETsmtpMail1.plの設定はpostmail,sendmailとも一緒です。(コピーしました)

postmailを改造したものについてはまだテストしてません。確認次第連絡致します。


sendmailのフォルダにjcode.plが必要です。

No.5172 投稿時間:2002年09月11日(Wed) 02:18 投稿者名:鷹の巣 URL:http://sakaguch.com/

> このままで起動していいのですか?

はい。

> とりあえずこのまま起動した結果は、
> Can't Locate ./jcode.pl at d:/www/spooky_house/public_html/cgi/sendmail/NETsmtpMail1.pl line14.

NETsmtpMail1.plのline14(14行目)は、
require './jcode.pl';
です。...\cgi\sendmailのフォルダにjcode.plが必要です。

# メモ帳をご使用の場合は、「編集」-「行へ移動」で「14」と入力し、「OK」を押せば、14行目に行きます。

> postmailを改造したものについてはまだテストしてません。確認次第連絡致します。

宜しく、お願い致します。


もう一度初めから見直しながら、チェックしてみます。

No.5176 投稿時間:2002年09月11日(Wed) 10:33 投稿者名:おざき URL:http://ozaki-y.com

> NETsmtpMail1.plのline14(14行目)は、
> require './jcode.pl';
> です。...\cgi\sendmailのフォルダにjcode.plが必要です。

No.5171にも書きましたが、NETsmtpMail1.plとjcode.plは
postmailとsendmailのフォルダにそれぞれ入っています。
14行目に関してもrequire './jcode.pl';になっています。

もう一度初めから見直しながらsendmailのチェックとpostmailのチェック行ってみます。
ちょっと忙しいので連絡は明日になりそうです。
すみません。


フォームメール動作しました。しかし、二つほど質問があります。

No.5201 投稿時間:2002年09月12日(Thu) 23:42 投稿者名:おざき URL:http://ozaki-y.com

もう一度perlのインストールをし、cgiもコピーして最初から全てやり直したところうまくいきました。
お手数おかけいたしました。ありがとうございます。

動作確認後、postmailを改造したもののテストを行ってみましたが、
やはり Can't Locate ./jcode.pl at d:/www/spooky_house/public_html/cgi/sendmail/NETsmtpMail1.pl line14.
というエラーが表示されます。
どういうことなんでしょうか?jcode.plは入れてます。14行目も確認しました。
postmail、sendmail共にテストはOKで、フォームメールからもきちんとメール届きます。

二つほど質問があります。
postmail、sendmail共にjcode.plとNETsmtpMail1.plはひつようなのでしょうか?
フォームメールを複数使いたい場合はpostmailにhtmのファイルを複数入れるだけでいいのでしょうか?

いろいろお手数おかけして申し訳ありませんが、最後に回答お願い致します。


NETsmtpMail1.plは、試験用という位置付けですから、不要です。

No.5232 投稿時間:2002年09月14日(Sat) 11:47 投稿者名:鷹の巣 URL:http://sakaguch.com/

> もう一度perlのインストールをし、cgiもコピーして最初から全てやり直したところうまくいきました。
> お手数おかけいたしました。ありがとうございます。


おめでとうございました。不具合点の理由が知りたかったのですが、Perlを以前インストールされた時にインストール先のフォルダ名を
変更されたり、何か特殊な操作をされていたら、教えて下さい。


> 動作確認後、postmailを改造したもののテストを行ってみましたが、
> やはり Can't Locate ./jcode.pl at d:/www/spooky_house/public_html/cgi/sendmail/NETsmtpMail1.pl line14.
> というエラーが表示されます。
> どういうことなんでしょうか?jcode.plは入れてます。14行目も確認しました。


私も先のNETsmtpMail1.plをコピーし、メモ帳に貼り付け(改行コードは、CRLF=0AH,0DH)、別のクライアント機にダウンロードし、
あるフォルダにjcode.plを入れ、コマンドラインから、perl.exe NETsmtpMail1.plを実施して見ましたが、うまく動作しました。


> postmail、sendmail共にテストはOKで、フォームメールからもきちんとメール届きます。


sendmail.cgiが使用出来るようでしたら、sendmailを呼び出しているCGIソースファイルをそのまま無修正で使用出来ますから、
その様な使い方をされる方が良いと考えます。


> 二つほど質問があります。
> postmail、sendmail共にjcode.plとNETsmtpMail1.plはひつようなのでしょうか?


メールを出すのに文字コードを7ビット化するもの(jcode.pl等)は、必要です。
postmail.cgiの場合は、メール本文の7ビット化にjcode.pl(16,167byte)は、必須です。
メールヘッダ(送信元メールアドレスや表題等)の7ビット化にmimew.pl(6,043byte)は推奨となっています。

# postmail.cgiの場合は、mimew.plを使用すると送信元のメールアドレスを「送信者 <メールアドレス>」というフォーマットに
# 自動変換する様です。
# 逆に言えば、メールアドレスが半角英数字だけの場合は、メールアドレスの変換は不要ですし、
# subject(表題)の7ビット化は、jcode.plだけで、出来ます。


NETsmtpMail1.plは、試験用という位置付けですから、不要です。
(要は、メールを送信する手段がsendmailだけではないことを理解して頂ければ良いと考えます。)
ただし、perlで書かれたCGIは、Windowsの数少ないOPENソースですから、内容を理解して頂いて、自分に合うように
どんどん改造して頂きたいとは思います。


> フォームメールを複数使いたい場合はpostmailにhtmのファイルを複数入れるだけでいいのでしょうか?


色んな種類の(複数の)フォームのhtmのファイルから、1つのpostmail.cgiを呼び出して、使用可能です。


SMTPサーバーは何をお使いですか

No.5139 投稿時間:2002年09月09日(Mon) 09:58 投稿者名:OAK URL:

> KENT WEBさんのPOSTMAILと、「にゃぁぁぁぁぁぁぁ!」さんのMS-Windows用sendmailを使い、
> フォームメールの設定を行っているのですが、全く動作しません。
> 単体テストを行った結果は、SMTPサーバのログには何もなく、mailtest.txtが
> メモ帳で表示されただけでした。
> 何度も設定とかは見直しましたが、さっぱりわかりません。
> どなたかよろしくお願いいたします。

プログラムのながれとして、
(1)a.html から <form action = mailform.cgi を呼ぶ
(2)mailform.cgi は open(" | sendmail.cgi -t ") によりsendmail.cgi へデータを渡す
(3)sendmail.cgi は ポート25を使って サーバー装置のSMTPサーバー にメールを出させる。
(4)SMTPサーバー は 自身でメール先相手へ SMTP でメールを送る。

と言う手順でメール配信が行われる様ですね。
postmail と言うのはSMTPサーバーですか? 違いますよね。何処が違うのですか?
SMTPサーバーは何をお使いですか?

いきなり実行して、メールが届かない。さてどうするか。

ログをたどって何処まで動いたか見るのも1つの方法ではありますが、
私のやり方は逆に追います。

つまり(4)は正しく動いているかからチェックします。
これは簡単で、サーバーマシンのメーラー(OEなど)にSMTP を127.0.0.1 でメールが送れるか調べる

あと、一部のISP(ビッグローブやYBBなど)では、ISPのSMTPを使っての送信は出来ないことは知ってますよね。


メールプログラムのパスチェック/種類チェックをコメントアウトしてください。

No.5149 投稿時間:2002年09月09日(Mon) 20:21 投稿者名:自鯖野郎! URL:

> KENT WEBさんのPOSTMAILと、「にゃぁぁぁぁぁぁぁ!」さんのMS-Windows用sendmailを使い、
> フォームメールの設定を行っているのですが、全く動作しません。

どうもはじめまして。
メールサーバーはやったことがないので良くわかりませんが、
上記の組み合わせだと
postmail.cgiのメールプログラムのパスチェック/種類チェック
のところを下記のようにコメントアウトしてください。

AN HTTP Server Home PageのHTTPDゲストブック/コメント集 全文検索で
「sendmail」か「postmail」で検索すると確か出てますよ。
記憶違いならすみません。


#------------#
# 設定完了 #
#------------#

# デコード処理
require $jcode;
&decode;

# チェックモード
if ($in{'mode'} eq "check") { &check; }

# POSTチェック
if ($postonly && !$postflag) { &error("不正なアクセスです"); }

# メールプログラムのパスチェック/種類チェック
#unless (-e $mailprog) { &error("メールプログラムのパスが不正です"); }
#if ($mailprog =~ /blat/i) { $prog_type=2; } else { $prog_type=1; }


レスありがとうございます。

No.5150 投稿時間:2002年09月09日(Mon) 21:23 投稿者名:おざき URL:http://ozaki-y.com

おなじように設定しましたが、やはりページを表示されません。と表示されます。
んー???


|目次|掲示板|過去ログ目次|▲頁先頭|