web-dev-qa-db-ja.com

mail()を送信するようにUbuntuサーバーをセットアップする

たくさん検索してみましたが、実際にUbuntuサーバーをセットアップする方法が見つからなかったため、phpのmail()関数を使用してphp経由でメールを送信できます。

サーバーにApache2、mysql、php5がインストールされています。

ありがとうございました。

40
Shishant

また、送信するスクリプトが必要なだけのユーザー向けのチュートリアルが不足していることにも同意します。エラーメール、本格的なメールサーバーは必要ありません。

まず、postfixがまだインストールされていない場合は、次のようにします。

Sudo apt-get install postfix

いくつかの質問が表示されます。最初に私は「インターネットサイト」を選びました。ファイアウォールの背後にあるマシンでは、代わりにsmarthostを選択する場合があります。 2番目の質問では、デフォルトでマシン名になります。私が制御するドメイン名を追加しました(必要に応じて、後でDNSを設定できるようにします)。

この時点で、コマンドラインから「メール」を使用してテストを送信できるはずです。 (私は通常 http://ubuntuforums.org/showthread.php?t=38429 の指示に従います。そうでない場合は、-fフラグを/usr/bin/sendmailに使用する必要があります。Iまた、ルートと通常のユーザーのエントリを含む/etc/aliasesを作成し、newaliasesを実行することもできます)

次に、/ etc/php5/conf.dの下に、次の内容のファイル(mailconfig.iniなど)を作成します。

sendmail_from = "[email protected]"
sendmail_path = "/usr/sbin/sendmail -t -i -f [email protected]"

[email protected]をメールアドレスに変更します。つまり、すべてのメールがあなたから送信されたように見え、拒否されないようにすることができます。これは、開発者にエラーメールを送信するだけで十分です。

(上記の手順はUbuntu 10.04、11.04、11.10、12.04でテストされています)

追伸コメントでrazzedによって指摘されているように、mailは常にそこにあるとは限りません(たとえば、Ubuntu 11.10にはありません)。これは実際には上記の手順には影響しません。テストに必要なのはmailだけで、sendmailも同様に使用できます。ただし、mailは電子メールの読み取りにも役立つため、通常、apt-get install mailutils(rootとして)を使用してインストールする価値があります。

45
Darren Cook

メールを送信できるようにubuntuサーバーをセットアップする必要があります...例として、postfixをインストールして構成できます。

Ubuntuのドキュメントの https://help.ubuntu.com/community/MailServer には、Niceページがあります。

2
Dominik

サーバー上に直接メールサーバーをセットアップするという厄介なプロセス(postfixなど)を実行するか、またはSMTPサーバーに直接接続できるライブラリを使用します。

1
tau-neutrino

最初にxmailパッケージをインストールする必要があります。それでも機能しない場合は、 こちら を確認してください。