CGI-BBS > 情報収集 > フォームメール > sendmailのコマンドの追加場所を教えて欲しいです。


カレッヂ
カレッヂ


質問者 コーギー  投稿日 2005/10/27(木) 14:43:34  [削除] (返信・回答が付いた後にこの質問の削除はできません)
みなさん、はじめまして。

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

そこでレンタルサーバー側に問い合わせたところ次の返事が来ました。
======================
新サーバーでは、sendmail使用時にセキュリティ強化のため、コマンドの指定が必要となります。
下記のようにsendmailのコマンドを指定してしていただければよろしいかと思われます。

■修正前:
if (!open(OUT,"| $sendmail $mailto")) { return; }

■修正後:
if (!open(OUT,"| $sendmail -f $mailto")) { return; }
または
if (!open(OUT,"| $sendmail -t -f $mailto")) { return; }
     など、その他必要に応じてコマンドを指定してください。

この設定を行って頂ければ、エラーは消えると思われます。
===================================

そこで、webform.cgi の168行目の	if (!(open(OUT,"| $sendmail -t"))) に
	if (!(open(OUT,"| $sendmail -t -f")))  -fを追加したところ、
エラーメッセージは出なくなったのですが、メールが転送されてこないのです。

コマンドの追加する場所が違うのでしょうか?
それともコマンドが違うのでしょうか?
どなたかアドバイスを宜しくお願いいたします。

frim.コーギー

【プロバイダ】http://www.hida-ginrei.com/cgi/yoyaku/yoyaku.html
【習熟度】多少の設置経験

返信(回答)する

 


Web裏技