投稿日:2002年11月24日 作成鷹の巣

No.6504 sendmail.cgiを使用して、フォームメールからメールが送れない。



sendmail.cgiを使用して、フォームメールからメールが送れない。

No.6504 投稿時間:2002年11月24日(Sun) 13:59 投稿者名:msyuiti URL:

msyuitiです。

「sendmail.cgiの単体試験ができない。」の掲示板の書き込みに、ご回答がなかったものですら、自ら外部端末より確認すべく出か
けていってきました。

その結果、つぎのエラーメッセージが表示されます。
Error 500
CGI エラー - Content-Type ヘッダが正しくありません。
CGI 出力メッセージ:
Can't locate ./jcode.pl at C:\WWW\public html\cgi\postmail\postmail.cgi line 142.

私の自鯖の情報としては。

・OSは、WINDOWS2000professional
・WWW鯖は、AN HTTPD(ver1034)
・CGIは、Active Perlで(ver5.6.1.633)
・Postmail.cgiは、鷹の巣さんのPostmail.cgi改を使用
・Sendmail Perlスクリプトは「にゃああああ」さんの
MS Windows用 Sendmail.cgiを使用
・フォームメール用CGIは、KENT WEBさんの
Postmailを使用形態にあわせて変更して使用
・メール鯖は、ArGosoft Mail Server(ver5.00.218.1)で
設定は完了しています。
・OutLook EXpressのメール設定は完了しています。
・OutLook EXpressのオプション設定は完了しています。

どこが、ひっかかっているのでしょうね。
Active Perl(ver5.6.1.633)単体のテストは合格しています。
自鯖では現在、CGIカウンターが動作しています。
Postmail.cgiとSendmail.cgiのコマンドの書き換えが間違って
いるのでしょうか。
鷹の巣さんの情報を印刷して忠実に書き換えを行って、指定場所に
入れています。ただ、CGIは、まったく初心者ですので、なにがなんだか分からなく、鷹の巣さんの情報をもとに忠実に設定しているというところです。

ただ、自鯖のメールクライアント(OutLook EXpress)の送受信をクリックすると、ArGosoft Mail Server(ver5.00.218.1)のログに書き込みがされます。

外部端末からテスト書き込みににもArGosoft Mail Server(ver5.00.218.1)の
ログに書き込みがされました。つぎのとおりです。

2002/11/24 12:23:00 - Requested POP3 connection from 127.0.0.1
2002/11/24 12:23:00 - ( 17) +OK ArGoSoft Mail Server Freeware, Version 1.8 (1.8.2.1)
2002/11/24 12:23:01 - ( 17) USER webmaster
2002/11/24 12:23:01 - ( 17) +OK Password required for webmaster
2002/11/24 12:23:01 - ( 17) PASS XXXXX
2002/11/24 12:23:01 - ( 17) +OK Mailbox locked and ready
2002/11/24 12:23:01 - ( 17) STAT
2002/11/24 12:23:01 - ( 17) +OK 0 0
2002/11/24 12:23:01 - ( 17) QUIT
2002/11/24 12:23:01 - ( 17) +OK Aba he
2002/11/24 12:23:01 - POP3 connection with 127.0.0.1 ended. ID=17

ご指導をお願いします。


同じ、フォルダにjcode.plがないというエラーです。

No.6505 投稿時間:2002年11月24日(Sun) 14:28 投稿者名:鷹の巣 URL:http://sakaguch.com/

> その結果、つぎのエラーメッセージが表示されます。
> Error 500
> CGI エラー - Content-Type ヘッダが正しくありません。
> CGI 出力メッセージ:
> Can't locate ./jcode.pl at C:\WWW\public html\cgi\postmail\postmail.cgi line 142.

メモ帳をご使用でしたら、ctrl+Gと入力して、行番号142に飛んで下さい。
同じ、フォルダにjcode.plがないというエラーです。

> ・Postmail.cgiは、鷹の巣さんのPostmail.cgi改を使用

これは、改造のお手伝いをしただけのファイルですから、まずKENT WEBさんから、
Postmailを入手し、鷹の巣のPostmail.cgi改を上書きコピーして下さい。

> ・メール鯖は、ArGosoft Mail Server(ver5.00.218.1)で

verは、2.8.Xではありませんか?

> 外部端末からテスト書き込みににもArGosoft Mail Server(ver5.00.218.1)の
> ログに書き込みがされました。つぎのとおりです。

Error 500が出るのにログに記録されるのでしょうか?


分かりません。

No.6510 投稿時間:2002年11月24日(Sun) 15:39 投稿者名:msyuiti URL:

> メモ帳をご使用でしたら、ctrl+Gと入力して、行番号142に飛んで下さい。
> 同じ、フォルダにjcode.plがないというエラーです。

141行は # デコード処理
142行は require $jcode;
143行は &decode:
です。
「jcode.pl」とは、何のファイルですか。

> > ・Postmail.cgiは、鷹の巣さんのPostmail.cgi改を使用
> これは、改造のお手伝いをしただけのファイルですから、まずKENT WEBさんから、
> Postmailを入手し、鷹の巣のPostmail.cgi改を上書きコピーして下さい。

分かりません。鷹の巣さんの「自宅サーバー用フォームメールの設定例」のフォルダの構造だと

D:\WWW\public_html\cgi\postmail - postmailのインストール先フォルダ
D:\WWW\public_html\cgi\postmail\postmail.html http://example.com/cgi/postmail/postmail.html 公開するフォームメール
D:\WWW\public_html\cgi\postmail\postmail.cgi http://example.com/cgi/postmail/postmail.cgi フォームメール用CGI

ですよね。
「公開するフォームメール」はKENT WEBさんからDLして使用形態にあわせて変更して「postmail.html」として「\postmail」フォルダに入れています。
「フォームメール用CGI」は、鷹の巣さんのpostmail.cgi改のコマンドを自鯖に合わせて書き換えて、「postmail.cgi」として「\postmail」フォルダに「postmail.html」と一緒に入れています。
これで、いけないのですか。KENT WEBさんのところには、「postmail.cgi」なるファイルはありませんよ。「postmail.html」はありますけど。

> > ・メール鯖は、ArGosoft Mail Server(ver5.00.218.1)で
> verは、2.8.Xではありませんか?

すいません間違えました。バージョンを確認しましたら。
you are using version 1.8.2.1となっっていました。

>error 500が出るのにログに記録されるのでしょうか?
ログに記録さけれるというよりは、ArGosoft Mail Serverが
反応して、何かよく分かりませんが記録されていた(先回の書
き込みのような)ということです。


日本語コードをperlで扱うためのperlスクリプトです。

No.6517 投稿時間:2002年11月24日(Sun) 16:31 投稿者名:鷹の巣 URL:http://sakaguch.com/

> 「jcode.pl」とは、何のファイルですか。

日本語コードをperlで扱うためのperlスクリプトです。

> これで、いけないのですか。KENT WEBさんのところには、「postmail.cgi」なるファイルはありませんよ。「postmail.html」はありますけど。

ダウンロードされたpostmail.lzhを解凍すると、
postmail.html
postmail.cgi
jcode.pl
の3つのファイルが\postmailというフォルダの中にあるはずです。
この内のpostmail.cgiをpostmail.cgi改に差し替えて下さい。
これら3つのファイルは、私の説明通りにするには、
D:\WWW\public_html\cgi\postmailというフォルダ内に入れて下さい。


postmail.cgiをpostmail.cgi改に差し替えました。

No.6520 投稿時間:2002年11月24日(Sun) 17:35 投稿者名:msyuiti URL:

> ダウンロードされたpostmail.lzhを解凍すると、
> postmail.html
> postmail.cgi
> jcode.pl
> の3つのファイルが\postmailというフォルダの中にあるはずです。
> この内のpostmail.cgiをpostmail.cgi改に差し替えて下さい。
> これら3つのファイルは、私の説明通りにするには、
> D:\WWW\public_html\cgi\postmailというフォルダ内に入れて下さい。

私の自鯖は全て「C:ドライブ」に入っていますので、それで説明いたしますと。

jcode.plファイルが自鯖に入っていませんでした。(これが原因かも)

「postmail.cgiをpostmail.cgi改に差し替え」るのは、postmail.cgi改を鷹の巣さんの説明に従って改造し(とは
いっても98行目webmaster@example.comをwebmaster@murakamike.myhome.cxに変えたのと
134行目192.168.1.0を192.168.0.97に変えただけです。)
c:\WWW\public_html\cgi\postmailというフォルダ内に
しっかり入れました。

もうひとつ、確認させてください自鯖機からフォームメールの
送受信のテストが可能であれば「その方法」をご指導いただ
きたい。


メール送信テスト

No.6522 投稿時間:2002年11月24日(Sun) 17:52 投稿者名:あくちゃん URL:http://www.atchfactory.com/

横槍で失礼します。

> もうひとつ、確認させてください自鯖機からフォームメールの
> 送受信のテストが可能であれば「その方法」をご指導いただ
> きたい。

自宅サーバー機でブラウザを立ち上げ、アドレス欄に http://localhost/(フォームメーラーのパス)
と入力すれば開くことができますので、プロバイダから割り当てられたご自分のメールアドレスへでも
送信テストをしてみるのはいかがでしょうか?


フォームメーラーのパスとは

No.6524 投稿時間:2002年11月24日(Sun) 18:56 投稿者名:msyuiti URL:

あくちゃん 殿
> 自宅サーバー機でブラウザを立ち上げ、アドレス欄に http://localhost/(フォームメーラーのパス)
> と入力すれば開くことができますので、プロバイダから割り当てられたご自分のメールアドレスへでも
> 送信テストをしてみるのはいかがでしょうか?

(フォームメーラーのパス)とは、具体的に教えてください。


ドキュメントルートからのパスです。

No.6528 投稿時間:2002年11月24日(Sun) 21:14 投稿者名:あくちゃん URL:http://www.atchfactory.com/

> (フォームメーラーのパス)とは、具体的に教えてください。

(゜o゜;ギョッ ドライブレターを除いて(つまりDドライブではなくCドライブで
運用されている件)鷹の巣さまの設定例通りのフォルダ構造になっているならば、

http://localhost/cgi/postmail/postmail.html

です。

404エラーが出てしまった場合にはパスが違うことになりますので、ドキュメント
ルートからのパスを確認して下さいね。(^^;;;


懇切丁寧なご指導ありがとうございます。

No.6559 投稿時間:2002年11月25日(Mon) 20:47 投稿者名:msyuiti URL:

> 運用されている件)鷹の巣さまの設定例通りのフォルダ構造になっているならば、
>
> http://localhost/cgi/postmail/postmail.html
>
> です。

上記のアドレスでフォームメールは開きました。
しかし、先々回記述された。

「…と入力すれば開くことができますので、プロバイダから割り当てられたご自分のメールアドレスへでも
送信テストをしてみるのはいかがでしょうか?」

ですが、フォームメールからは自鯖のwebmaster宛しかメールは送れないのではないでしょうか。

開いたフォームメールに、例えば。

おなまえ:msyuit
Eメール:syuiti@r66.7-dj.com
タイトル:テストメール
メッセージ:テストです。

と入力して送信をしてみてくださいということですか。


フォームメーラーは…

No.6565 投稿時間:2002年11月25日(Mon) 22:23 投稿者名:あくちゃん URL:http://www.atchfactory.com/

こんばんは

> 「…と入力すれば開くことができますので、プロバイダから割り当てられたご自分のメールアドレスへでも
> 送信テストをしてみるのはいかがでしょうか?」

あ゛、すごい大ボケたことを書いてしまったかも… ( ̄□ ̄;)!! フォームメーラーからのメールは、
cgiの中で指定されたアドレス宛に送信されます (。_゜☆\ バキバキ

ですので、msyuitiさまが自宅サーバーでメールサーバーも運用しておられ、なおかつcgiで設定された
アドレスが自宅サーバーのwebmasterのアドレスなのであれば、

> フォームメールからは自鯖のwebmaster宛しかメールは送れないのではないでしょうか。

↑↑↑ その通りです。(^^;


ということは、自鯖のハードから自鯖のフオームメールテストはできないの?

No.6567 投稿時間:2002年11月25日(Mon) 22:33 投稿者名:msyuiti URL:

>
> ↑↑↑ その通りです。(^^;

自鯖のフォームメールをテストする方法は、外部端末からしか
できないわけですか、なにかある気がするね。
情報をくださいませんか。よろしくお願いいたします。


フオームメールのテストについて。

No.6579 投稿時間:2002年11月26日(Tue) 00:37 投稿者名:鷹の巣 URL:http://sakaguch.com/

> 自鯖のフォームメールをテストする方法は、外部端末からしか
> できないわけですか、なにかある気がするね。


あくちゃんのご投稿通り
http://localhost/cgi/postmail/postmail.html
で、テストして下さい。
このページに入力するメールアドレスは、書式さえあっていれば良いので、
user@example.com
とでも入力すれば、良いと考えます。


あくちゃんの書き込みは間違っていました。

No.6594 投稿時間:2002年11月26日(Tue) 20:44 投稿者名:msyuiti URL:

>あくちゃんのご投稿通り
> http://localhost/cgi/postmail/postmail.html
> で、テストして下さい。
> このページに入力するメールアドレスは、書式さえあっていれば良いので、
> user@example.com
> とでも入力すれば、良いと考えます。

とのことですが、あくちゃんは、先々回の書き込みで、次のように書いています。

こんばんは

> 「…と入力すれば開くことができますので、プロバイダから割り当てられたご自分のメールアドレスへでも
> 送信テストをしてみるのはいかがでしょうか?」

あ゛、すごい大ボケたことを書いてしまったかも… ( ̄□ ̄;)!! フォームメーラーからのメールは、
cgiの中で指定されたアドレス宛に送信されます (。_゜☆\ バキバキ

ですので、msyuitiさまが自宅サーバーでメールサーバーも運用しておられ、なおかつcgiで設定された
アドレスが自宅サーバーのwebmasterのアドレスなのであれば、

> フォームメールからは自鯖のwebmaster宛しかメールは送れないのではないでしょうか。

↑↑↑ その通りです。(^^;

ということで、少しこんがらかって来ましたが、やはり、自鯖機からはフォームメールのテストは出来ない、外部端末から確認するしか方法がない。ということでしょうか。

ご指導、宜しくお願いいたします。


ここ一週間がんばってみました。

No.6637 投稿時間:2002年11月30日(Sat) 02:11 投稿者名:msyuiti URL:

> あくちゃんのご投稿通り
> http://localhost/cgi/postmail/postmail.html
> で、テストして下さい。
> このページに入力するメールアドレスは、書式さえあっていれば良いので、
> user@example.com
> とでも入力すれば、良いと考えます。

お世話になっております。
11月25日(月)より、自分なりにコツコツと、次の確認を積み重ねてきました。

○ArGoSoft Mail Server設定の確認…ok
○Outlook Expressメールアドレス設定の確認…ok
○Outlook Express基本設定の確認…ok
○WWWサーバー(AN HTTPD)設定の確認…ok
実行プログラム
C:\perl\bin\perl.exe になっている事を等を確認しました。
○拡張子「cgi」と「pl」の「perl.exe」との関連付け確認
・「cgi」は完璧に関連付けられていました。…念のためにエクスプローラ
でファイルを開いたら「青いコマンド画面」が開いてすぐに閉じました。
・「pl」はアクションを実行するアプリケーションの欄が["C:\PERL\BIN\PERL.EXE""%1"%*]
となっていて「C:」の前に「"」が付いていたり、「PERL.EXE」の後に「"」が一つ余計に付いていたり
「PERL.EXE」の後と「%*」の前にそれぞれ半角のスペースが入っていないといけないを直して
関連付けをすることができました。……念のためにエクスプローラでファイルを開いたら
「青いコマンド画面」が開いてすぐに閉じました。
○「send.mail.cgi」と「 postmail.cgi」プログラムを全部プリントアウトして改造部分を
再度確認をしました。…ok…フォームメールからのテストのため「 postmail.cgi」の
送信先メールアドレスを「syuiti@r66.7-dj.com」に
設定しました。
○先日成功していた「send.mail.cgi」の単体試験を再度実施…次のログを確認

2002/11/30 0:25:03 - Requested POP3 connection from 127.0.0.1
2002/11/30 0:25:03 - ( 6) +OK ArGoSoft Mail Server Freeware, Version 1.8 (1.8.2.1)
2002/11/30 0:25:03 - ( 6) USER webpage
2002/11/30 0:25:03 - ( 6) +OK Password required for webpage
2002/11/30 0:25:03 - ( 6) PASS XXXXXXXXXX
2002/11/30 0:25:03 - ( 6) +OK Mailbox locked and ready
2002/11/30 0:25:03 - ( 6) QUIT
2002/11/30 0:25:03 - ( 6) +OK Aba he
2002/11/30 0:25:03 - POP3 connection with 127.0.0.1 ended. ID=6

ただ、\cgi\sendmailフォルダの中に気になる「sendmail.log」を発見。内容は
次のとおり。

[11/30 00:25:03] #Error#SMTPサーバーからのお返事がへんです。 卵z:354 実際:503 5.5.2 Need Rcpt command.

○フォームメールから「syuiti@r66.7-dj.co」へ送信テスト実施
KENT WEBさんからDL(postmail V1.8です。)改造した。フォーム メールに次のように入力して送信してみました。

MAME:msyuiti
EMALE:user@example.com
TITLE:テストメール
COMMENT:テストメールです。

そうすると、確認画面と送信画面となって「送信が正常に完了しました。」の画面に

Can't open perl script "c:/WWW/public_html/cgi/sendmail/sendmail.cgi": No such file or directory
のエラーメッセージが表示されます。

○「send.mail.cgi」と「 postmail.cgi」の改造個所の確認を何度 も何度も行い、送信テストを行いますがメールは送られてきませ ん。SMTPサーバーも反応しません(ログも記録されていません。)
「 postmail.cgi」の送信先メールアドレスを
「murakamike.myhome.cx」に設定しなおして、OutlookExpressの「送受 信」をクリックするとSMTPサーバーは反応し(ログが記録されます。)
「send.mail.cgi」の単体試験が成功しているので、メールは送られ てもいいと思うのですが。ブラウザに表示されるエラーは「Can't open perl script "c:/WWW/public_html/cgi/sendmail/sendmail.cgi": No such file or directory」要するにsendmail.cgiのディレクトリーが開いて機能していないということでしょう、関連付けでしょうか…確認済みokです。

困ってしまいました。この難関を切り開くご指導をお願いいたします。








cgiの中でご自分のアドレスを設定してください

No.6597 投稿時間:2002年11月26日(Tue) 22:43 投稿者名:あくちゃん URL:http://www.atchfactory.com/

鷹の巣さまがフォローしてくださったのですが、ご理解頂けなかったようで残念です。

お使いのcgiの中には、必ず送信先のメールアドレスを設定するハズです。もっと
分かりやすく言うと (^^; フォームメーラーのページから、どのアドレスにメールを
送るのかを設定しないと、何の意味もなくなってしまいます。これはお分かりですね。

ですので、そのアドレス(フォームメーラーからの送信先)を、ご自分がプロバイダ
から割り当てられている、現在お使いのメールアドレスに設定すれば、鷹の巣さまや
私が以前の発言に含めているフォームメーラーのアドレス(No.6579を参照のこと)
で、何か適当な内容を記入して[送信]とした時に、メールを受信できるのです。

この方法を使えば、自宅サーバーからフォームメーラーのテストが可能なのですが、
お分かりになられましたか?(;^_^A アセアセ


postmail.cgiとsendmail.cgiの設定箇所をこの掲示板に張りつけて下さい。

No.6646 投稿時間:2002年11月30日(Sat) 11:51 投稿者名:鷹の巣 URL:http://sakaguch.com/

コマンドの説明をしていた頃はどうなるかと心配でしたが、よく頑張られましたね。

> ○WWWサーバー(AN HTTPD)設定の確認…ok
> 実行プログラム
> C:\perl\bin\perl.exe になっている事を等を確認しました。

Webサーバーから実行されるperlをここで指定されていると、以下の関連付けを
行わなくても正常にフォームメールを送信出来ます。
# 勿論、関連付けされていた方が別の意味で良いですけど。

> ○拡張子「cgi」と「pl」の「perl.exe」との関連付け確認


> ○「send.mail.cgi」と「 postmail.cgi」プログラムを全部プリントアウトして改造部分を

> そうすると、確認画面と送信画面となって「送信が正常に完了しました。」の画面に
>
> Can't open perl script "c:/WWW/public_html/cgi/sendmail/sendmail.cgi": No such file or directory
> のエラーメッセージが表示されます。

「send.mail.cgi」と「sendmail.cgi」は、別のファイル名ですが、書き損じでしょうか?

postmail.cgiとsendmail.cgiの設定箇所をこの掲示板に張りつけて下さい。
その際、sendmail.cgiのパスワード設定部分は、伏字にして下さい。


postmail.cgiとsendmail.cgiの設定箇所です。

No.6647 投稿時間:2002年11月30日(Sat) 13:08 投稿者名:msyuiti URL:

> 「send.mail.cgi」と「sendmail.cgi」は、別のファイル名ですが、書き損じでしょうか?

書き損じです。

> postmail.cgiとsendmail.cgiの設定箇所をこの掲示板に張りつけて下さい。
> その際、sendmail.cgiのパスワード設定部分は、伏字にして下さい。

[postmail.cgi]

#------------#
# 基本設定 #
#------------#

# 文字コード変換ライブラリ
$jcode = './jcode.pl';

# MIMEエンコードライブラリを使う場合(推奨)
# → メールヘッダの全角文字をBASE64変換する機能
# → mimew.plを指定
$mimer = './mimew.pl';

# メールソフトまでのパス
# → sendmailの例 :/usr/lib/sendmail
# → BlatJの例 :c:\blatj\blatj.exe
# $mailprog = '/usr/lib/sendmail';
$mailprog = 'c:/Perl/bin/Perl.exe c:/WWW/public_html/cgi/sendmail/sendmail.cgi';
#$mailprog = 'c:/WWW/public_html/cgi/sendmail/sendmail.cgi'; #<--- postmail.cgi?mode=check時に使用。

# 送信先メールアドレス
$mailto = 'syuiti@r66.7-dj.com';

# 送信前確認
# 0 : no
# 1 : yes
$preview = 1;

# メールタイトル
$subject = "フォームメール";

# スクリプト名
$script = './postmail.cgi';

# 送信後の戻り先
$back = '/index.html';

# method形式 (POST or GET)
$method = 'POST';

# 送信は method=POST 限定 (0=no 1=yes)
# → セキュリティ対策
$postonly = 1;

# bodyタグ
$body = '<body bgcolor="#F1F1F1" text="#000000" link="#000FF" vlink="#800080">';

# プレビュー画面の枠の色
$tbl_col1 = "#800040";

# プレビュー画面の下地の色
$tbl_col2 = "#FFFFFF";

# ------- 追加改造開始 -------
# LAN 内のプライベートセグメントアドレス(192.168.1.0)を設定して、
# LAN 内からのアクセス(192.168.1.*)に対して、gethostbyaddr関数が実行されないようにします。
# わかない場合は、LAN 内のクライアント機のプライベートアドレスを設定して下さい。
$PrivateSegAddr = '192.168.0.97';
# ------- 追加改造終了 -------

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

# デコード処理
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; }

# 入力モレエラー
if ($flag) {
$key2 =~ s/^\_//;
&error("$key2の入力は必須です");
}

# E-Mail書式チェック
if ($in{'email'} =~ /\,/) { &error("メールアドレスにコンマ「\,」が含まれています"); }
if ($in{'email'} ne "" && $in{'email'} !~ /[\w\.\-]+\@[\w\.\-]+\.[a-zA-Z]{2,5}$/) {
&error("メールアドレスの書式が不正です");
}

# プレビュー
if ($preview && $in{'mode'} ne "send") {

&header;
print "<br><div align=center>\n";
print "<h3>- 以下の内容でよろしければ送信ボタンを押して下さい -</h3>\n";
print "<form action=\"$script\" method=\"$method\">\n";
print "<input type=hidden name=mode value=send>\n";
print "<TABLE BORDER=0 BGCOLOR=\"$tbl_col1\" CELLSPACING=0 CELLPADDING=1 width='80%'><TR><TD>\n";
print "<table border=0 cellspacing=2 cellpadding=4 width='100%'>\n";
print "<tr><th bgcolor=\"$tbl_col2\" width='30%'>項目</th><th bgcolor=\"$tbl_col2\" width='70%'>内容</th></tr>\n";

foreach (@key) {
next if ($bef eq $_);
$in{$_} =~ s/</&lt;/g;
$in{$_} =~ s/>/&gt;/g;
$in{$_} =~ s/\"/&quot;/g;
$in{$_} =~ s/\0/ /g;
$in{$_} =~ s/\r\n/<br>/g;
$in{$_} =~ s/\r/<br>/g;
$in{$_} =~ s/\n/<br>/g;
if ($in{$_} =~ /<br>$/) {
while ($in{$_} =~ /<br>$/) { $in{$_} =~ s/<br>$//g; }
}
print "<tr><td bgcolor=\"$tbl_col2\"><b>$_</b></td>";
print "<td bgcolor=\"$tbl_col2\">$in{$_}\n";
print "<input type=hidden name=\"$_\" value=\"$in{$_}\"></td>\n";
$bef = $_;
}

print "</tr></table></TD></TR></TABLE>\n<P><table><tr><td>\n";
print "<input type=submit value='この内容で送信する'></form></td>\n";
print "<td><form><input type=button value='前画面に戻る' onClick='history.back()'></form></td></tr></table></div>\n";
print "<!-- $ver -->\n</body>\n</html>\n";
exit;
}

# 時間・ホストを取得
&get_time;
&get_host;

# blatj送信
if ($prog_type == 2) {

# 一時ファイルを書き出し
$tempfile = "./$$\.tmp";
open(TMP,">$tempfile") || &error("Write Error : $tempfile");
print TMP "「$subject」よりメールの発信がありました.\n\n";
print TMP "送信日時:$date\n";
print TMP "ブラウザ:$ENV{'HTTP_USER_AGENT'}\n";
print TMP "ホスト名:$host\n\n";
foreach (@key) {
next if ($_ eq "mode");
next if ($bef eq $_);
$in{$_} =~ s/&lt;/</g;
$in{$_} =~ s/&gt;/>/g;
$in{$_} =~ s/&quot;/\"/g;
$in{$_} =~ s/<br>/\n/g;
$in{$_} =~ s/\.\n/\. \n/g;
if ($in{$_} =~ /\n/) { print TMP "$_ = \n\n$in{$_}\n"; }
else { print TMP "$_ = $in{$_}\n"; }
$bef = $_;
}
close(TMP);

# 送信処理
open(MAIL,"| $mailprog $tempfile -t $mailto -s \"$subject\" -q")
|| &error("メール送信に失敗しました");
close(MAIL);

# 一時ファイル削除
unlink($tempfile);
}
# sendmail送信
else {
$mail_body .= "「$subject」よりメールの発信がありました.\n\n";
$mail_body .= "送信日時:$date\n";
$mail_body .= "ブラウザ:$ENV{'HTTP_USER_AGENT'}\n";
# ------- 追加改造開始 -------
#$mail_body .= "ホスト名:$host\n\n";
$mail_body .= "ホスト名:$host ($addr)\n";
$mail_body .= "[ 元IPアドレス:$ENV{'FORWARDED_FOR'} - $ENV{'HTTP_X_FORWARDED_FOR'} ]\n\n";
# ------- 追加改造終了 -------

----- 追加改造開始 -------
# LAN 内からのアクセスに対して、gethostbyaddr関数が実行されないようにします。
if (pack("C3", split(/\./, $addr)) eq pack("C3", split(/\./, '192.168.0.97'))) {
$host = $addr;
} elsif ($host eq "" || $host eq $addr) {
#変更 if ($host eq "" || $host eq $addr) {
# ------- 追加改造終了 -------
$host = gethostbyaddr(pack("C4", split(/\./, $addr)), 2) || $addr;
}
}


[sendmail.cgi]
#======================================================================#
# 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@murakamike.myhome.cx';

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

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

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


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

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

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

#◇設定ここまで

以上、postmail.cgiとsendmail.cgiの設定箇所です。
ご確認の上、ご指導お願いいたします。


送信先メールアドレスを自宅SMTPサーバーのメールアドレスにして下さい。

No.6651 投稿時間:2002年11月30日(Sat) 16:00 投稿者名:鷹の巣 URL:http://sakaguch.com/

> # 送信先メールアドレス
> $mailto = 'syuiti@r66.7-dj.com';

下記の設定では、送信先メールアドレスを自宅SMTPサーバーのメールアドレスにして下さい。
$mailto = 'webpage@murakamike.myhome.cx';
でも届くはずです。

> [sendmail.cgi]
> #◇SMTPサーバ
> $smtp = "127.0.0.1";
>
> #◇標準 FORM アドレス
> $from = 'webpage@murakamike.myhome.cx';

> #======================================================================#
> #◇POP before SMTPを使用する yes=1 no=0
> #$pop_before_smtp = 0;
> $pop_before_smtp =1;
>
> #◇ POP3サーバアドレス
> # $pop3 = "202.248.37.133";
> $pop3 = "127.0.0.1";
>
> #◇POP3接続用 USER-ID/PASSWORD
> $user = 'webpage';
> $pass = '**********';
>
> #◇設定ここまで


$mail = 'webpage@murakamike.myhome.cx';に変更しました。

No.6652 投稿時間:2002年11月30日(Sat) 16:41 投稿者名:msyuiti URL:

> > # 送信先メールアドレス
> > $mailto = 'syuiti@r66.7-dj.com';
>
> 下記の設定では、送信先メールアドレスを自宅SMTPサーバーのメ
ールアドレスにして下さい。
> $mailto = 'webpage@murakamike.myhome.cx';
> でも届くはずです。

?フオームメールからフオームメールへ送信するんですか。
間違いじゃ(webpage@でなくてwebmaster@では…)ありませんか、

指示どおり[postmail.cgi]のコマンド

$mailto = 'syuiti@r66.7-dj.com';を$mailto = 'webpage@murakamike
.myhome.cx';

に変更して、先回のように
フォームメールに次のように入力して送信しました。

MAME:msyuiti
EMALE:user@example.com
TITLE:テストメール
COMMENT:テストメールです。

そうすると、確認画面と送信画面となって「送信が正常に完了しまし
た。」の画面に

Can't open perl script "c:/WWW/public_html/cgi/sendmail/se
ndmail.cgi": No such file or directory

と先回のようなエラーメッセージが表示されます。SMTPサーバーも反
応なし、ログへの記録なしです。自宅サーバー機のoutlook expreesに
もメールは来ていません。
…何が原因でしょうか。


環境変数のpathとcomspecの内容を教えて下さい。

No.6655 投稿時間:2002年11月30日(Sat) 17:26 投稿者名:鷹の巣 URL:http://sakaguch.com/

> ?フオームメールからフオームメールへ送信するんですか。
> 間違いじゃ(webpage@でなくてwebmaster@では…)ありませんか、

mailfromは、何でも良いです。問題は、プロバイダ(r66.7-dj.com)のSMTPサーバーに
メールを送信していたことです。

> 指示どおり[postmail.cgi]のコマンド
>
> $mailto = 'syuiti@r66.7-dj.com';を$mailto = 'webpage@murakamike
> .myhome.cx';
>
> に変更して、先回のように
> フォームメールに次のように入力して送信しました。
>
> MAME:msyuiti
> EMALE:user@example.com
> TITLE:テストメール
> COMMENT:テストメールです。
>
> そうすると、確認画面と送信画面となって「送信が正常に完了しまし
> た。」の画面に
>
> Can't open perl script "c:/WWW/public_html/cgi/sendmail/se
> ndmail.cgi": No such file or directory

1.コマンドプロンプト画面から、
dir c:/WWW/public_html/cgi/sendmail/sendmail.cgi
として、ファイルは、存在しましたか。
一応、c:のcは、大文字のCとして下さい。
2.デスクトップのマイコンピュータを右クリックし、プロバティを左クリックして、
環境変数のpathとcomspecの内容を教えて下さい。
3.perlを一旦、アンインストールして、再インストールして見て下さい。

# 基本的には、/WWW/public_htmlを置くドライブは、Cドライブ以外が良いのですが。


3点確認しました。

No.6658 投稿時間:2002年11月30日(Sat) 18:18 投稿者名:msyuiti URL:

お世話になります。

> 1.コマンドプロンプト画面から、
> dir c:/WWW/public_html/cgi/sendmail/sendmail.cgi
> として、ファイルは、存在しましたか。
> 一応、c:のcは、大文字のCとして下さい。

「'c:/www/public'は、内部コマンドまたは、外部コマンド、操作可能
なプログラムまたバッチファイルとして認識されていません。」
とメッセージが表示されます。

> 2.デスクトップのマイコンピュータを右クリックし、プロバティ
を左クリックして、
> 環境変数のpathとcomspecの内容を教えて下さい。

環境変数のpath:c:\perl\bin\;c:\WINNT\system32;c:\WINNT;C:......
.
環境変数のcomspase:C:\WINNT\system32\cmd.exe
となっています。

> 3.perlを一旦、アンインストールして、再インストールして見て
下さい。

間違うと大変ですので確認させてください。
perlをアンインストールして
http://www.activestate.com/Products/Download/Get.plex?id=ASPN
Perl」
からDLして、「cgi」「pl」の関連付けを再度実施するということです
ね。

頑張りますので、宜しくお願いいたします。


関連付けは、特に実施しなくてもフォームメールを送れます。

No.6660 投稿時間:2002年11月30日(Sat) 19:59 投稿者名:鷹の巣 URL:http://sakaguch.com/

> > 1.コマンドプロンプト画面から、
> > dir c:/WWW/public_html/cgi/sendmail/sendmail.cgi
> > として、ファイルは、存在しましたか。
> > 一応、c:のcは、大文字のCとして下さい。
>
> 「'c:/www/public'は、内部コマンドまたは、外部コマンド、操作可能
> なプログラムまたバッチファイルとして認識されていません。」
> とメッセージが表示されます。

間違いました。
dir C:\WWW\public_html\cgi\sendmail\sendmail.cgi
として下さい。

> 環境変数のpath:c:\perl\bin\;c:\WINNT\system32;c:\WINNT;C:......
> 環境変数のcomspase:C:\WINNT\system32\cmd.exe

私の場合は、cが大文字ですが、一応問題ないと思います。

> > 3.perlを一旦、アンインストールして、再インストールして見て
> 下さい。
>
> 間違うと大変ですので確認させてください。
> perlをアンインストールして
> 「http://www.activestate.com/Products/Download/Get.plex?id=ASPN
> Perl」
> からDLして、「cgi」「pl」の関連付けを再度実施するということです
> ね。

Windows 2000の場合は、
http://www.activestate.com/Products/Download/Download.plex?id=ActivePerl
から、
ActivePerl-5.6.1.633-MSWin32-x86.msi
をダウンロードして、インストールして下さい。

# 「cgi」「pl」の関連付けは、特に実施しなくてもフォームメールを送れます。


perl再インストールしました。

No.6667 投稿時間:2002年11月30日(Sat) 22:10 投稿者名:msyuiti URL:

お世話になります。

> 間違いました。
> dir C:\WWW\public_html\cgi\sendmail\sendmail.cgi
> として下さい。
平成元年1月27日に購入した。
「入門MS-DOS」「実用MS-DOS」「応用MS-DOS」の本を引っ張り出して
きて
「dir」コマンドの「スイッチ」「pass」を確認しました。
私の場合は、Cドライブがカレントドライブですので、

dir「C:」の「C:」はつけない方がよいと思って行ってみました。

dir \www\public html\cgi\sendmail\sendmail.cgi(cr)
とすると。
「指定されたパスがみつかりません。」と表示されます。

「c:」をつけて
dir c:\www\public html\cgi\sendmail\sendmail.cgi(cr)
としても。
「指定されたパスがみつかりません。」と表示されます。

> Windows 2000の場合は、
> http://www.activestate.com/Products/Download/Download.plex
?id=ActivePerl
> から、
> ActivePerl-5.6.1.633-MSWin32-x86.msi
> をダウンロードして、インストールして下さい。

コントロールパネルのアプリケーションの追加と削除からPerlを削除
して、上記アドレスからDLして再インストールをしました。再起動をか
けました。拡張子の関連付けはしておりませんが、カウンターやフオー
ムメールが作動、表示されています。どういうことなのですか、今後の
ために教えてください。
Perlのインストールと環境変数が有効になっているか、コマンドプロ
ンプトから「perl -v」で確認を取っています。okです。

いよいよ、フオームメールからの送信テストですが、
NAME:msyuiti
EMALE:user@example.com
TITLE:テストメール
COMMENT:テストメールです。

そうすると、確認画面と送信画面となって「送信が正常に完了しまし
た。」の画面に、またまた、

Can't open perl script "c:/WWW/public_html/cgi/sendmail/se
ndmail.cgi": No such file or directory
のエラーメッセージが表示されます。

このエラーは、なんなのでしょうか、きちんと、c:/WWW/public html/
cgi/sendmailフォルダにはsendmail.cgiファイルが入っていて、単体試
験でも動作確認がとれていますよ。

しかし、コマンドプロンプトから
dir c:\www\public html\cgi\sendmail\sendmail.cgi(cr)
で、中身の確認がとれないのもおかしいですよね、「dir」コマンドの
書式が間違っているのでしょうか、私のタイピングがおかしいのでしょ
うか。

ちなみに、
dir \www(cr)では、中身が全部表示されます。
dir \www\public html(cr)では、
ドライブCのボリュームラベルがありません。
ボリュームシリアル番号はD8A7-5B9Dです。
|
|
|

です。あと何かありますか。


public htmlとpublic_htmlのどちらでしょうか?

No.6668 投稿時間:2002年11月30日(Sat) 22:17 投稿者名:鷹の巣 URL:http://sakaguch.com/

> dir \www(cr)では、中身が全部表示されます。
> dir \www\public html(cr)では、
> ドライブCのボリュームラベルがありません。
> ボリュームシリアル番号はD8A7-5B9Dです。

public htmlとpublic_htmlとは、違うフォルダ名です。
スペースを含む場合は、"(ダブルクオーテーション)で両端をくくる必要があります。
dir "\www\public html"(cr)
として下さい。

public htmlとpublic_htmlのどちらでしょうか?


あっと、違うのですか。初歩的なミスです。行きます!

No.6670 投稿時間:2002年11月30日(Sat) 22:49 投稿者名:msyuiti URL:

お世話になっております。

> public htmlとpublic_htmlとは、違うフォルダ名です。
> スペースを含む場合は、"(ダブルクオーテーション)で両端を
くくる必要があります。
> dir "\www\public html"(cr)
> として下さい。
>
> public htmlとpublic_htmlのどちらでしょうか?

public htmlです。

違うのですか、私は同じ物とばかり思ってタイピングしていました。
public_html
cとhの間の線「アンダーバー」と呼ぶんでしたっけ、どのようにタイ
ピングすると入力されるのでしょうか。

dir "c:\www\public html\cgi\sendmail\sendmail.cgi"(cr
)

で中身が表示されます。成功です。だんだん絞りこまれてきましたね


なのに、なぜ、ブラウザにCan't open perl script "c:/WWW/pub
lic_html/cgi/sendmail/sendmail.cgi": No such file or direct
ory

のエラーメッセージが表示されるのでしょうね。


やっと分かりました。パソコン内のファイル名をpublic_htmlに統一すれば成功します。

No.6672 投稿時間:2002年11月30日(Sat) 23:30 投稿者名:msyuiti URL:

お世話になっております。
> public htmlとpublic_htmlとは、違うフォルダ名です。
> スペースを含む場合は、"(ダブルクオーテーション)で両端をくくる必要があります。
> dir "\www\public html"(cr)
> として下さい。
>
> public htmlとpublic_htmlのどちらでしょうか?

自宅サーバーのファイル名をpublic_htmlに統一すれば成功できそうな気がします。

鷹巣さんによい報告ができるかもしれません。


ブラウザのエラーが消えた。ログが記録された。

No.6673 投稿時間:2002年12月01日(Sun) 01:08 投稿者名:msyuiti URL:

お世話になっております。

> 自宅サーバーのファイル名をpublic_htmlに統一すれば成功でき
そうな気がします。
>
> 鷹巣さんによい報告ができるかもしれません。

自宅サーバーのファイル名をpublic_htmlに統一しましたら。(アンダ
バー有)
ブラウザのエラーメッセージ

「Can't open perl script "c:/WWW/public_html/cgi/sendmail/
sendmail.cgi": No such file or directory」

が表示されなくなりました。

SMTPサーバーも反応し、つぎのログが記録されています。

2002/12/01 0:14:57 - Requested POP3 connection from 127.0.0.1
2002/12/01 0:14:57 - ( 5) +OK ArGoSoft Mail Server Freeware
, Version 1.8 (1.8.2.1)
2002/12/01 0:14:57 - ( 5) USER webpage
2002/12/01 0:14:57 - ( 5) +OK Password required for webpage
2002/12/01 0:14:57 - ( 5) PASS XXXXXXXXXX
2002/12/01 0:14:57 - ( 5) +OK Mailbox locked and ready
2002/12/01 0:14:58 - ( 5) QUIT
2002/12/01 0:14:58 - ( 5) +OK Aba he
2002/12/01 0:14:58 - POP3 connection with 127.0.0.1 ended. ID=5

しかし、テストメールは、来ません。
原因として考えられることは、送信元のメールアドレスと送信先のメ
ールアドレスの記入に、ミスがあるのではないかと思われます。「まと
め」てみますと。

フオームメールから、メールを送信すると。
【送信元】…sendmailで設定したメールアドレス

○webpage@murakamike.myhome.cx

から、


【送信先】…postmailで設定したメールアドレス

OutlookEXprees(フォームメール受信、送信用)
○webmaster@ murakamike.myhome.cx

か、ブロバイダー経由で自宅サーバーのOutLook2000(私はブロバイダ
ー用メーラとして、OutLook2000を自鯖機に入れている。)へ送った場合

○syuiti@r66.7-dj.com

へ着くと考えるといいことになりますね。

ですから、鷹の巣さんの次の説明がよく分かりません。

> > mailfromは、何でも良いです。問題は、プロバイダ(r66.7
-dj.c
> om)のSMTPサーバーに
> > メールを送信していたことです。
>
> プロバイダ(r66.7-dj.com)を設定したのは、鷹巣さん(NO.6579
)とあ
> くちゃん(NO.6597)の指導があったからです。

ちょっと、解りにくかったですね。すみません。(設定内容がわから
ずに書いていました。)

まとめますと、
1.フォームメール(postmail.html)に記入するメールアドレスは、
送信元のユーザーの不特定多数のメールアドレス(user@example.com
でなくても1@1.comでも可)

2.sendmail.cgiに書くメールアドレスは、送信に使用するSMTPサーバ
ーにあるメールアドレス
自宅サーバーの場合は、SMTPサーバーは、'127.0.0.1'でメールアド
レス='webpage@murakamike.myhome.cx'
(プロバイダの場合は、SMTPサーバーは、'XXX'でメールアドレス='
syuiti@r66.7-dj.com')
となります。

3.postmail.cgiに書く宛先メールアドレスは、フォームメールで受信
するメールアドレスです。
受信したいメールアドレスを書いて下さい。
自宅サーバーのメールアドレス場合は、='webpage@murakamike.myho
me.cx'や
'XXXX@murakamike.myhome.cx'等です。
プロバイダのメールアドレス場合は、'syuiti@r66.7-dj.com'

です。

なぜ、メールが到着しないのかとの関連で、【送信先】と【送信先】
のメールアドレスを再度確認させてください。


追記

No.6659 投稿時間:2002年11月30日(Sat) 18:35 投稿者名:msyuiti URL:

お世話になっております。

> mailfromは、何でも良いです。問題は、プロバイダ(r66.7-dj.c
om)のSMTPサーバーに
> メールを送信していたことです。

プロバイダ(r66.7-dj.com)を設定したのは、鷹巣さん(NO.6579)とあ
くちゃん(NO.6597)の指導があったからです。


設定するメールアドレスのまとめ。

No.6661 投稿時間:2002年11月30日(Sat) 20:21 投稿者名:鷹の巣 URL:http://sakaguch.com/

> > mailfromは、何でも良いです。問題は、プロバイダ(r66.7-dj.c
> om)のSMTPサーバーに
> > メールを送信していたことです。
>
> プロバイダ(r66.7-dj.com)を設定したのは、鷹巣さん(NO.6579)とあ
> くちゃん(NO.6597)の指導があったからです。

ちょっと、解りにくかったですね。すみません。(設定内容がわからずに書いていました。)

まとめますと、
1.フォームメール(postmail.html)に記入するメールアドレスは、
送信元のユーザーの不特定多数のメールアドレス(user@example.comでなくても1@1.comでも可)

2.sendmail.cgiに書くメールアドレスは、送信に使用するSMTPサーバーにあるメールアドレス
自宅サーバーの場合は、SMTPサーバーは、'127.0.0.1'でメールアドレス='webpage@murakamike.myhome.cx'
(プロバイダの場合は、SMTPサーバーは、'XXX'でメールアドレス='syuiti@r66.7-dj.com')
となります。

3.postmail.cgiに書く宛先メールアドレスは、フォームメールで受信するメールアドレスです。
受信したいメールアドレスを書いて下さい。
自宅サーバーのメールアドレス場合は、='webpage@murakamike.myhome.cx'や
'XXXX@murakamike.myhome.cx'等です。
プロバイダのメールアドレス場合は、'syuiti@r66.7-dj.com'

です。


sendmail.cgiでは、メール送信に利用するSMTPサーバーに対する手続きを設定して下さい。

No.6674 投稿時間:2002年12月01日(Sun) 08:14 投稿者名:鷹の巣 URL:http://sakaguch.com/

> SMTPサーバーも反応し、つぎのログが記録されています。
>
> 2002/12/01 0:14:57 - Requested POP3 connection from 127.0.0.1
> 2002/12/01 0:14:57 - ( 5) +OK ArGoSoft Mail Server Freeware
> , Version 1.8 (1.8.2.1)
> 2002/12/01 0:14:57 - ( 5) USER webpage
> 2002/12/01 0:14:57 - ( 5) +OK Password required for webpage
> 2002/12/01 0:14:57 - ( 5) PASS XXXXXXXXXX
> 2002/12/01 0:14:57 - ( 5) +OK Mailbox locked and ready

メーラでPOP3 connection(メールの読み出し)を行う場合と
同じようなユーザー名とパスワードの設定をsendmail.cgiに設定して下さい。
WebサーバーとSMTPサーバーとPOP3サーバーが同じ場合は、
SMTPサーバーは、「127.0.0.1」で、POP3は、「127.0.0.1」に設定していますよね。
'webpage@murakamike.myhome.cx'のUSER webpageの
Passwordを正しく、sendmail.cgiに設定して下さい。
そうしないとメールの受信を拒否(Mailbox locked and ready)されます。

sendmail.cgiでは、メール送信に利用するSMTPサーバーに対する手続きを
しっかり設定して下さい。

どのメールアドレスから、どのメールアドレスへメールを送るのかは、
Postmail.cgiで設定して下さい。


分かりません。具体的にご指導ください。

No.6676 投稿時間:2002年12月01日(Sun) 10:44 投稿者名:msyuiti URL:

お世話になっております。

> メーラでPOP3 connection(メールの読み出し)を行う場合と
> 同じようなユーザー名とパスワードの設定をsendmail.cgiに設定して下さい。
> WebサーバーとSMTPサーバーとPOP3サーバーが同じ場合は、
> SMTPサーバーは、「127.0.0.1」で、POP3は、「127.0.0.1」に設定していますよね。
> 'webpage@murakamike.myhome.cx'のUSER webpageの
> Passwordを正しく、sendmail.cgiに設定して下さい。
> そうしないとメールの受信を拒否(Mailbox locked and ready)されます。
>
> sendmail.cgiでは、メール送信に利用するSMTPサーバーに対する手続きを
> しっかり設定して下さい。
>
> どのメールアドレスから、どのメールアドレスへメールを送るのかは、
> Postmail.cgiで設定して下さい。

分かりません。具体的にご指導ください。
私の場合はフオームメールのテストをする方法を2パターン考えています。

1、自鯖機フオームメール(webpage@........)送信ーー直接ーー自鯖機メーラ【outlook express】(webmaster@......)受信…可能か不可能か未確認
【sendmail.cgi】$user='webpage'; --------- 【postmail.cgi】$mailto='webmaster@murakamike.myhome.cx';

2、自鯖機フオームメール(webpage@....)送信ーーブロバイダー経由7-dj.comーー自鯖機メーラ【outlook 2000】(syuiti@r66.7-dj.com)受信…鷹のさん巣さんあくちゃんの指導で可能となっている。
【sendmail.cgi】$user='webpage'; --------- 【postmail.cgi】$mailto='syuiti@r66.7-dj.com';

私としては、上記のように考えて、【sendmail.cgi】と【postmail.cgi】の改造をして、テストしてきました。しかし、フオームメールから送られません。

ちなみに、鷹の巣さんが「No.6661」で書いていらっしゃることは、理解できません。

「3.postmail.cgiに書く宛先メールアドレスは、フォームメールで受信するメールアドレスです。
受信したいメールアドレスを書いて下さい。
自宅サーバーのメールアドレス場合は、='webpage@murakamike.myhome.cx'や
'XXXX@murakamike.myhome.cx'等です。
プロバイダのメールアドレス場合は、'syuiti@r66.7-dj.com'」

具体的に【sendmail.cgi】と【postmail.cgi】と【outlook express】と【outlook 2000】の設定をご指導いただきたい。


確認しました。

No.6677 投稿時間:2002年12月01日(Sun) 11:46 投稿者名:msyuiti URL:

お世話になります。

> > 2002/12/01 0:14:57 - ( 5) +OK Password required f
or webpage
> > 2002/12/01 0:14:57 - ( 5) PASS XXXXXXXXXX

パスワードが機能しています。

> Passwordを正しく、sendmail.cgiに設定して下さい。

ArGosoft Mail Severのuse setup画面で設定した
「webpage」 のパスワードと同じ 「********」を設定しています。

>どのメールアドレスから、どのメールアドレスへメールを送るの
かは、
> Postmail.cgiで設定して下さい。

「postmail.cgi」にメールアドレスを設定する個所は1箇所しかありま
せん。
この1箇所は「送信先」メールアドレスですよね。「postmail.cgi」の
どこに「送信元」のメールアドレスを設定すればよろしいのでしょうか


ちょっと、あせっております。具体的なご指導もお願いいたします。


ブロバイダー経由でのフォームメール送信成功!!

No.6679 投稿時間:2002年12月01日(Sun) 14:52 投稿者名:msyuiti URL:

お世話になっております。

> メーラでPOP3 connection(メールの読み出し)を行う場合と
> 同じようなユーザー名とパスワードの設定をsendmail.cgiに設定
して下さい。

【sendmail.cgi】は、次のように設定しました。

#◇SMTPサーバ
$smtp = "smtp.r66.7-dj.com";

#◇標準 FORM アドレス
$from = 'syuiti@r66.7-dj.com';

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

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

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


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

#◇ POP3サーバアドレス
# $pop3 = "202.248.37.133";
$pop3 = "pop.r66.7-dj.com";

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

#◇設定ここまで

【 Postmail.cgi】は、次のように設定しました。
#------------#
# 基本設定 #
#------------#

# 文字コード変換ライブラリ
$jcode = './jcode.pl';

# MIMEエンコードライブラリを使う場合(推奨)
# → メールヘッダの全角文字をBASE64変換する機能
# → mimew.plを指定
$mimer = './mimew.pl';

# メールソフトまでのパス
# → sendmailの例 :/usr/lib/sendmail
# → BlatJの例 :c:\blatj\blatj.exe
# $mailprog = '/usr/lib/sendmail';
$mailprog = 'c:/Perl/bin/Perl.exe c:/WWW/public_html/cgi/s
endmail/sendmail.cgi';
#$mailprog = 'c:/WWW/public_html/cgi/sendmail/sendmail.cgi'; #&br />lt;--- postmail.cgi?mode=check時に使用。

# 送信先メールアドレス
$mailto = 'syuiti@r66.7-dj.com';

# 送信前確認
# 0 : no
# 1 : yes
$preview = 1;

# メールタイトル
$subject = "フォームメール";

# スクリプト名
$script = './postmail.cgi';

# 送信後の戻り先
$back = '/index.html';

# method形式 (POST or GET)
$method = 'POST';

# 送信は method=POST 限定 (0=no 1=yes)
# → セキュリティ対策
$postonly = 1;

# bodyタグ
$body = '<body bgcolor="#F1F1F1" text="#00000
0" link="#000FF" vlink="#800080">';

# プレビュー画面の枠の色
$tbl_col1 = "#800040";

# プレビュー画面の下地の色
$tbl_col2 = "#FFFFFF";

# ------- 追加改造開始 -------
# LAN 内のプライベートセグメントアドレス(192.168.1.0)を設定して

# LAN 内からのアクセス(192.168.1.*)に対して、gethostbyaddr関数
が実行されないようにします。
# わかない場合は、LAN 内のクライアント機のプライベートアドレス
を設定して下さい。
$PrivateSegAddr = '192.168.0.97';
# ------- 追加改造終了 -------

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

上記の設定で、ブロバイダー経由(7-dj.com)でのフォームメール送信
は成功いたしました。万歳、万歳!!
あとは、自鯖のPOP before SMTPを使用してのフォームメール送信に成
功すればよいだけですので、コツコツと時間をかけて構築していきたい
と思っております。

お互いに、仕事のある身です。半分ゴールしていますから,焦りませ
ん。完全ゴールをめざして、時々(今までのようなご苦労はおかけしま
せん。)ご指導を仰ぐ質問を投稿するかもしれませんが、その節には宜
しくお願いいたします。

とりあえず、一区切りと言う事で、明日から仕事です。お互い頑張り
ましょう。適切なご助言、ご指導ありがとうございました。
失礼な質問、書き込み、多々あったことだと思いますが、お許しくだ
さいまし。


自宅SMTPサーバーのメールアドレスで受信する設定。

No.6688 投稿時間:2002年12月02日(Mon) 08:16 投稿者名:鷹の巣 URL:http://sakaguch.com/

自宅SMTPサーバーのメールアドレスで受信するには、

> 【sendmail.cgi】は、次のように設定しました。
>
> #◇SMTPサーバ
> $smtp = "smtp.r66.7-dj.com";

$smtp = "127.0.0.1";

> #◇標準 FORM アドレス
> $from = 'syuiti@r66.7-dj.com';

$fromは、何でも可。

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

$pop_before_smtp = 0;

> #◇ POP3サーバアドレス
> # $pop3 = "202.248.37.133";
> $pop3 = "pop.r66.7-dj.com";
>
> #◇POP3接続用 USER-ID/PASSWORD
> $user = 'syuiti';
> $pass = '*****';

$pop_before_smtp = 0;のため、上記の設定は不要。(そのままでも可)
$pop_before_smtp = 1;にした場合をあえて書きますと
$pop3 = "127.0.0.1";
$user = 'webpage';
$pass = 'webpageのパスワード';

> 【 Postmail.cgi】は、次のように設定しました。
> # 送信先メールアドレス
> $mailto = 'syuiti@r66.7-dj.com';

$mailto = 'webpage@murakamike.myhome.cx';

> あとは、自鯖のPOP before SMTPを使用してのフォームメール送信に成
> 功すればよいだけですので、コツコツと時間をかけて構築していきたい
> と思っております。

ArGosoft Mail Serverの「SMTP Authentication」タブのDo Not Authenticate Following IP Address欄に
自己診断用のIPアドレス(127.0.0.1)を入れると、認証なしでうまく行きますが、
このIP Address欄には何も入れずに行って下さい。

> 失礼な質問、書き込み、多々あったことだと思いますが、お許しくだ
> さいまし。

その様なことは、ありませんでした。今後とも宜しくお願い致します。


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