
Ubuntu日本語フォーラム

ログインしていません。
自宅サーバーで、phpが起動しております。
mb_send_mail()を利用するには、メールサーバーを立てなくてはいけないのでしょうか?
オフライン
http://php.net/manual/ja/function.mb-send-mail.php
http://www.php.net/manual/ja/function.mail.php
phpの中で閉じる話のように見えます。
が、私はphpは10年近く前にちらっと見てみただけなので、詳しいことは判りません。
詳細はphpのマニュアルや参考書類を参照下さい。
オフライン
hmatsueさま、投稿ありがとうございます。
mb_send_mail()の書き方は、わかっておりますが、sendmailにかかわること、ubuntu利用なので、このフォーラムを利用させていただいております。
ひきつづき、投稿お待ちしております。
オフライン
claris による投稿:
mb_send_mail()の書き方は、わかっておりますが、sendmailにかかわること、ubuntu利用なので、このフォーラムを利用させていただいております。
独自ドメインを取り、そのドメインからメールを送りたいなら、メールサーバを立てる。
そーじゃなければ、いつも使っている、メールサーバを使う。
オフライン
siさま、感謝いたします。
ぐぐったり、書籍をあさっても、その辺の疑問が全然解消しなくて困っておりました。
ubuntu 8.10 Desktop版には、始めから、sendmailが入っていないということはありますか?
which sendmail
としたら、何も帰ってこなかった記憶があります。今は、パスがでますが。。。
もう一つ、メールサーバーは立てても、ISPからはじかれる可能性があるんで、立てません。単なるメールを送りたいだけなんです。
/etc/init.d/sendmail start
も必要ないのでしょうか?
オフライン
PHP はあまり詳しくはありませんが、ちょっと気になったのでざっと調べてみました
mb_send_mail() -その実態は mail()- は、外部の sendmail コマンドを呼び出してメールの送信を行っているようです
ちなみに、Windows 上では直接 SMTP (メール) サーバーと接続してメール送信をするようです
このため、Linux で PHP の mb_send_mail() や mail() を使う場合は、sendmail コマンドが PHP とは別にインストールされていなくてはなりません
旧来の Linux では各々の PC でメールサーバーを動かすことが一般的でした
しかし最近ではメールサーバーはそれ専用に用意した PC (サーバー PC) で動かすようになり、個々の PC にはインストールされない傾向が見受けられるようです
Ubuntu Desktop edition もその傾向の中でインストール直後の状態ではメールサーバーはインストールされていません
そして困ったことに、Linux 上の PHP の mb_send_mail() や mail() が使う sendmail コマンドは、メールサーバーに付随したコマンドだということです
つまり Ubuntu Desktop edition で PHP の mb_send_mail() や mail() を使うためには、メールサーバーを追加インストールする必要があります
sendmail コマンドが付随するメールサーバーには以下があります (ubuntu 9.10 の場合)
citadel-mta, courier-mta, esmtp-run, exim4-daemon-heavy, exim4-daemon-light, masqmail, msmtp-mta, nbsmtp, nullmailer, postfix, ssmtp, xmail
どれかひとつだけをインストールすれば、sendmail コマンドが一緒にインストールされます
ただし、当然ですがインストールしたメールサーバーの設定をきちんと行っておかなくてはなりません
sendmail はインストールしたメールサーバーを使ってメールを送信します
sendmail を使わずに PHP からメールを送信するには、PEAR::Mail などを使えばいいようです
オフライン
ryさん フォローありがとうございます。
最近のUbuntuでは、eximが入らなくなったのを、失念してました。
ネット情報では、postfixを入れる人が多いようです。
オフライン
各位
私が#2で嘘を書いたせいで、混乱させてしまって申し訳ありません。
pythonのように内部で処理されるものと思っていました。
postfix(とそれに付随するsendmail)でメールを送信する場合で、上位のSMTPサーバが認証を必要とする場合などは、
http://www.postfix-jp.info/origdocs/install-report-sasl.html
の「Postfix の設定」あたりが参考になるかと思います。
環境がFreeBSDのようなので、導入方法などは異なるかと思います。
オフライン
ryさん、siさん、hmatsueさん、ありがとうございます。
postfixを入れる方向でやってみます。
関数名?がmb_send_mail()、コマンド名がsendmail、自宅メールサーバーを立てるのも、sendmail、postfixを使っても呼ばれたるのは、sendmailコマンド。
ややこしいですね。。。
オフライン
claris による投稿:
ややこしいですね。。。
それが、歴史的経緯とか過去の遺産とか呼ばれる...... (余談です
オフライン