CGI-BBS > SO−HO > ショッピングバスケット > V7が新OSでメール送信できず


カレッヂ
カレッヂ


質問者 濱野英治  投稿日 2010/5/21(金) 00:23:45
OSアップのテスト中です。

ショッピングバスケットプロ v7 だけが メール送信が全部エラーに
なります。 他の perl cgi ソフトは正常にメール送信できます。

perl の実行時エラーは
 (例えば 管理設定の メールアドレスの設定では)  
設定ボタンを押すと、日本語翻訳で、以下のようなエラーです。

    サーバの内部でエラーまたは設定上の問題が発生したため、
    リクエストを処理できませんでした。このディレクトリへの 
    CGI アクセスが有効にされているかどうか、サーバの管理者に
    ご確認ください。

もちろん、cgi の実行権限はマニュアルのとうりにしてあります。

新OSは、CendOS 5.4 です。Sendmail v8.13 との事です。 
旧OSでは Sendmail v8.11.6 でした。

御社の cargo7.x.txt を読むと、

 >>  Sendmail  "-t"  オプション付き送信のみを行います。

とありますが、このあたりが問題なのでししょうか。
たしかに、 cart1.cgi  には   sendmail -t  とあり、
他の動作している perl cgi ソフトには  -t がありません。

試しに cart1.cgi  の -t を全部取ってみましたが、
結果は同じでした。

ソフトを なるべく継続使用したいのですが、現在のところ
八方塞がり となっています。

何か よいアドバイスはありますでしょうか。
以上
 

【習熟度】多少の改造ができる

回答者 rescue  [削除]  投稿日 2010/5/28(金) 10:32:38
ご利用ありがとうございます。

-t はデータを評価する基本的なオプションなので、なくならないとは思うのですが、
その環境で実証してみないとなんとも言えません。

もしよろしければサポートしますので、直接ご連絡ください。
rescue@rescue.ne.jp
質問者 濱野英治  [削除]  投稿日 2010/5/28(金) 15:09:19
ご返事 ありがとう ございます。
ただ先週、ソースの中の sendmail 部分を自分なりに 変更して
正常に送信できるように なりました。

ファイルは  cart1.cgi です。  以下のような 具合です。

  #####  open(OUT,"| $sendmail -t");

  if ($SAMPLE) { open(OUT,"| $sendmail -t -f $in{'Email'}")    ; }
	 else { open(OUT,"| $sendmail -t -f $dat{'emailj'}")  ; }

問題は -t オプションの送信には  "-f 送信先アドレス"  が付加されないと
ダメになった・・・ という事らしいですね。

でも、今度は管理画面からのメールアドレスの変更をすると なぜか
プログラムがエラーでストップします。 
こちらのほうは 理由がわからないので、 email.cgi の 修正後、送信
と思われる部分をコメント化して 済ましました。

以下のような 具合です。 

  ####  if ($in{'email'} ne $setup{'email'})   { &sendmail(  〜〜〜省略〜〜 );  }
  ####  if ($in{'emailj'} ne $setup{'emailj'}) { &sendmail(  〜〜〜省略〜〜 );  }

何とか 送信したい ものですが・・・

以上
回答者 rescue  [削除]  投稿日 2010/5/28(金) 15:30:37
当方のサーバで同様のオプションで実験できるか分かりませんが、トライしてみます。
少々お待ちください。
回答者 rescue  [削除]  投稿日 2010/5/31(月) 11:43:04
修正版の準備が出来ました。
症状改善を見るため、当該サーバで実証のご協力をお願いしたく、
転送メールをしました。ご覧いただけましたらご連絡お願いします。
rescue@rescue.ne.jp

返信(回答)する

 


Web裏技