**[[質問箱3/261]] [#l3eaf554]
#author("2018-03-11T16:09:13+09:00;2010-01-28T00:05:24+09:00","","")
**[[質問箱/3261]] [#l3eaf554]
|RIGHT:70|LEFT:410|c
|~カテゴリ||
|~サマリ|ページを更新すると「pkwk_mail_notify(): Failed」と表示され、更新ができません。|
|~バージョン|1.4.6|
|~投稿者|[[tsuge]]|
|~状態|完了|
|~投稿日|&new{2005-11-24 (木) 23:58:24};|
***質問 [#faa2456d]
下記の通りpukiwiki.ini.phpを設定しているのですが、
ページを更新すると「pkwk_mail_notify(): Failed」と表示され、更新ができません。

 // Send mail per update of pages
 $notify = 1;
 
 // Send diff only
 $notify_diff_only = 1;
 
 // SMTP server (Windows only. Usually specified at php.ini)
 $smtp_server = 'localhost';
 
 // Mail recipient (To:) and sender (From:)
 $notify_to   = 'uaer@provider.ne.jp';	// To:
 $notify_from = 'pukiwiki@mydomain.com';	// From:

***回答 [#w917e1d6]
- 取りあえず更新通知メールを諦めたら、更新そのものは出来るのですね?また、そのサーバは、PHPからメールが送信できる環境ですか? --  &new{2005-11-25 (金) 00:18:09};
- その通りで更新・PHPからメール送信は可能です。 -- [[tsuge]] &new{2005-11-25 (金) 00:41:07};
- phpからsendmailへのパスは正しく設定しています。PHPがMUAとしてのsendmailコマンドにメールを引き継いだ後で、sendmailコマンドがローカルホストのSMTPサーバに渡そうとして失敗しているようです。phpからのメールは送信しましたと表示されるが、toには届かないです。&br;PukiWikiの問題ではなさそうです。どうも失礼しました -- [[tsuge]] &new{2005-11-27 (日) 15:33:31};

//#comment


----
***質問-2 [#d1869645]
- 上記と同様にnotifyがFailしてしまいます。場違いの質問かもしれませんが、"PHPからメールの送信は可能"かどうかはいかにして確かめればよいのでしょうか。ちなみにOutlookからメールの送受信はできており、それをSMTPサーバとしてpukiwiki.ini.php内で指定しています。 -- [[pkwk初心者]] &new{2006-10-24 (火) 11:07:27};
***回答-2 [#i3355bc3]
- 利用者であれば当然に閲覧できる筈の仕様を読む。管理者に問い合わせる。phpinfoの出力を見て、mail送信に関する設定が適切に行われているか確認し、実際にmb_send_mail()を試してみる。Outlookから云々はあまり意味がありません。おそらく大抵の場合、そのように$smtp_serverを設定するのは誤りです。 --  &new{2006-10-24 (火) 18:47:04};
- メール送信テストを[[こんな感じ>http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/php_k11.htm]]で作り、test6.phpにアクセスしてはいかがですか。 &br; それはそうと、あなたの環境は・・・レンタルサーバー ? 自宅サーバー ? Linux ? Windows -- [[hirokasa]] &new{2006-10-24 (火) 19:32:02};
- ご丁寧にご検討ありがとうございます。環境はwindowsXPpro+php5+pukiwiki1.4.7+apacheです。smtpサーバが必要なのかと思い[[sendmailまねーる>http://tokyo.atso-net.jp/pukiwikip/?SendMail]]を導入し、test6.phpにアクセスしてみたのですが。。。"sendmail_from" not set in php.ini or custom "From:" header missing というエラーが出てきてしまいます。ちなみにC:windowsフォルダのphp.iniのsendmail_fromにはxxxx@yahoo.co.jp(xxxxはログイン名)にしています。まずtest6.phpをクリアにしたいのですが、、、場違い質問かとは思いますが、ご助言いただければ幸いです。 -- [[pkwk初心者]] &new{2006-10-25 (水) 14:43:05};
-- 残念ながら私はWindows環境に詳しくありません。しかしsendmailまねーるはSMTPサーバーではないですよね。Windows用のSMTPサーバーをインストールし適切に設定を施す必要があると思います。 -- [[hirokasa]] &new{2006-10-25 (水) 15:35:15};
- Windowsでメール通知機能をしようするには結構改造が必要そう。メッセージ本文の改行コードを\r\nにしないといけなかったり、Subjectにマルチバイトとシングルバイトの混在が困難だったり。自分が調べたなかで一番役にたったサイトはhttp://jp.php.net/manual/ja/function.mb-send-mail.phpです。サーバーのOSによってコードを変えないといけない場合、どうしてるんだろう? -- [[agena]] &new{2007-06-12 (火) 09:03:05};
--file.php::file_write()で作成される更新情報(メール本文)の改行コードが'\n'であったので、pkwk_mail_notify()に渡す前に'\r\n'に変換。
--同様にmail.php::pkwk_mail_notify()内のheader,footer作成ロジック中の'\n'を'\r\n'に修正。
--mail.php::pkwk_mail_notify()の$subjectにマルチバイト、シングルバイトが混在しているとエラーになるので関数下部を以下のように改造。
 ini_set('SMTP', $smtp_server);
 $subject = mb_convert_encoding($subject, "ISO-2022-JP","AUTO");
 $subject = mb_encode_mimeheader($subject);
 mb_language(LANG);
 //if ($_headers == '') {
     return mail($_to, $subject, $message);
 //} else {
 //    return mb_send_mail($_to, $subject, $message, $_headers);
 //}
-- PHP初心者なんで間違っていたら指摘願います。 -- [[agena]] &new{2007-06-12 (火) 12:33:41};

- MTA 関連: [[続・質問箱/641]] --  &new{2010-01-28 (木) 00:05:23};
- MTA 関連: [[質問箱/2641]] --  &new{2010-01-28 (木) 00:05:23};

//#comment

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.067 sec.

SourceForge