Menyiapkan email untuk localhost

0

Saya mencoba menguji beberapa kode web dan menjalankannya pada host lokal. Bagaimana cara mengatur email untuk localhost sehingga kode dapat menggunakan fungsi pesan php untuk mengirim email?

Jika saya perlu mendapatkan ruang web host di suatu tempat dan menggunakan server mail itu untuk mengirim email dari localhost, bagaimana cara mengatur ini?

jarryd
sumber
1
Akan membantu untuk mengetahui OS apa yang Anda gunakan ...
ck.
OSX, menjalankan mamp.
jarryd
1
Sudah ada delapan rilis utama OS X selama lebih dari satu dekade. Harap lebih spesifik.
Daniel Beck

Jawaban:

1

Mac OS X 10.5 dan 10.6 datang dengan program pengiriman surat bernama postfix, tetapi tidak diaktifkan secara default. Ini mungkin bekerja dengan 10.7, tapi saya belum melihat itu.

Jika Anda hanya ingin mengirim semua surat keluar Anda ke beberapa server relai, seperti server SMTP penyedia layanan Internet Anda, Anda biasanya perlu memiliki nama host untuk komputer yang mengirim surat. Konfigurasi ini untuk server yang tidak digunakan untuk menerima email.

Buka Terminal dan masukkan perintah berikut, masing-masing pada satu baris. Setelah perintah pertama Anda akan diminta kata sandi Anda. (Oh, Anda harus masuk sebagai pengguna dengan hak administratif.)

Pertama, Anda ingin mengatur postfix untuk dijalankan ketika komputer Anda mencoba mengirim email:

% sudo launchctl unload /System/Library/LaunchDaemons/org.postfix.master.plist
% sudo defaults write /System/Library/LaunchDaemons/org.postfix.master OnDemand -bool true
% sudo launchctl load /System/Library/LaunchDaemons/org.postfix.master.plist

Selanjutnya, Anda ingin memberi tahu postfix apa nama host komputer itu:

% sudo postconf -e myhostname=<host-name-of-computer>

Selanjutnya, katakan postfix server SMTP apa yang digunakan untuk mengirim email:

% sudo postconf -e relayhost=<your-isp's-smtp-server>

Ini berfungsi untuk saya karena ISP saya tidak memerlukan otentikasi untuk menggunakan server SMTP mereka. Mereka hanya meminta lalu lintas datang dari jaringan mereka.

Jika server SMTP yang Anda gunakan memerlukan otentikasi, ada beberapa langkah tambahan:

% sudo echo <you-isp's-smtp-server> <username>:<password> >> /etc/postfix/sasl_passwd
% sudo postconf -e smtp_sasl_auth_enable=yes
% sudo postconf -e smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd

Pada titik ini, jika postfix mencoba mengirim email ke someone@<host-name-of-computer>, email akan dikirim secara lokal. Jika email Anda untuk nama host ini ditangani oleh beberapa server lain, beri tahu postfix bahwa ini bukan tujuan akhir untuk email yang dikirim ke nama host itu:

% sudo postconf -e mydestination=localhost

Saya menggunakan yang berikut ini khusus untuk lingkungan saya:

% sudo postconf -e myhostname=subtlecoolness.com
% sudo postconf -e relayhost=smtp-server.austin.rr.com

Sana! Anda sekarang harus berlari postfix dan server web Anda akan mengirim email!

(SAYA menulis posting blog tentang ini dahulu kala.)

William Jackson
sumber