Re:send.cgiが動作していないようです

和田 (2010-11-08 03:33:15) www.synck.com

sendmailのパスとオプション指定は別々に行う必要があるためその指定では動かないと思われます。
send.cgi内に
open(MAIL,"| $conf{’sendmail’} -f $mailfrom -t");
という部分があるのでそれを
open(MAIL,"| /usr/sbin/sendmail -t -f miyazaki_be");
こうすれば多分うごくと思います。

sendmailのオプション付加について

近藤由美子さん (2010-12-24 15:38:32) fc.canonet.ne.jp/www2.bcmedia.co.jp/secure/example.html

和田様
とても素敵なフォームをありがとうございます。
今回2度目の挑戦ですが、サーバの設定が通常と違うため、悪戦苦闘しています。メールフォームプロ2.1.4を使用しています

プログラムは一応動くのですが、sendmailのオプションが設定できないためかメールは送信されません。
サーバ側の指定では-t,-fのオプションを付けるよう指示されています。

/usr/local/bin/sendmail -t -f’xxx@sss.sss’

前の方の回答で、行ける!と思ったらsend.cgiに以下の箇所がありません。
open(MAIL,"| $conf{’sendmail’} -f $mailfrom -t");
このバージョンではどこを直せばいいのでしょうか。

また、send.cgi を修正した場合、config.cgiのsendmailのパスと送信先メールアドレスを指定する部分はどのようにするのでしょうか。
perlはほとんどわからないので、具体的に教えていただけるとうれしいです。よろしくお願いいたします。

sendmailのオプション付加について 追伸

近藤由美子さん (2010-12-27 13:33:28) fc.canonet.ne.jp/www2.bcmedia.co.jp/secure/example.html

和田様
上のメールを投稿した後、他のcgiを探したところ、functions.cgiの452行目にsendmailの記述があったので、下記のように修正してみましたが、check.cgiでは、sendmail のパスが見つからないと出てきました。

functions.cgiを修正
452 open(MAIL,"| $sendmail -t");

open(MAIL,"| /usr/local/bin/sendmail -t -f’test@xxxx.co.jp’");

サーバのマニュアルではsendmailについて以下の記述があります。
----------------------
【sendmailの利用方法】
CGIでメールを送信する処理を行う場合は、サーバに用意されているsendmailを利用します。 sendmailのパスは、/usr/local/bin/sendmailです。 sendmailを使う場合は、メール送信元アドレスを指定してください。 CGIプログラム内で記述するコマンドの書式は、以下のようになります。

/usr/local/bin/sendmail -t -f’送信元アドレス’
例)送信元をabc@abcdefg.co.jpにする場合
/usr/local/bin/sendmail -t -f’abc@abcdefg.co.jp’
重要
例)独自ドメインがexample.co.jpの場合
/usr/local/bin/sendmail -t -f’abcdefg@example.co.jp’
* -fオプションと、指定するメールアドレスの間には半角スペースを入れないでください。
---------------------------------------------------
申し訳ありません!お忙しいとは思いますが、何卒教えてください。
年末ギリギリでほんとにスミマセン。

Re:sendmailのオプション付加について

和田 (2010-12-28 10:23:07) www.synck.com

ご推察の通りfunction.cgiの
open(MAIL,"|
からはじまる部分のいづれか(設定によって異なる)を
open(MAIL,"| /usr/local/bin/sendmail -t -f’abcdefg@example.co.jp’");
へ変更すればOKです。
この際、@の前に半角の¥マークを入れるのを忘れないでください。