Saya sudah mencoba selama 2 hari penuh sekarang, dan saya tidak bisa mendapatkan hal yang paling sederhana untuk bekerja.
Masalahnya: Mengirim eMail dari PHP ke alamat eMail saya tidak berfungsi
Saya telah bekerja dengan Windows dan Sendmail (Sendmail ada dalam paket XAMPP) sebelumnya dan semuanya baik-baik saja. Paket XAMPP (1.7.7) untuk Linux tidak terintegrasi dengan Sendmail. Jadi setelah mencari-cari sedikit, saya menemukan bahwa Postfix lebih cocok untuk lingkungan-LAMPP.
Apa yang saya coba sejauh ini:
Saya telah menginstal Postfix dan ingin mengkonfigurasinya untuk hanya menggunakan smtp-server penyedia eMail pribadi saya (seperti yang terjadi pada Windows). Jadi saya sudah mengkonfigurasi php.ini saya seperti ini:
[mail function]
; For Win32 only.
;SMTP = localhost
;smtp_port = 25
; For Win32 only.
;sendmail_from = [email protected]
sendmail_path = /etc/postfix
mail.add_x_header = On
Perhatikan bahwa saya sudah berkomentar "-saya Win32" saja. The /etc/postfix/main.cf Sepertinya ini:
smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
myhostname = ubuntu
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
sender_canonical_maps = hash:/etc/postfix/sender_canonical
mydestination = ubuntu, localhost.localdomain, localhost
relayhost = mail.gmx.net
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only
/ etc / aliases tidak berubah:
# Required aliases
postmaster: root
MAILER-DAEMON: postmaster
# Common aliases
abuse: postmaster
spam: postmaster
/ etc / postfix / sasl_password :
my.providers.smtp my_login:my_password
/ etc / postfic / sender_canonical:
postmaster [email protected]
Apa yang terjadi:
Jadi ketika saya melakukannya
> sudo /etc/init.d/postfix start
semuanya tampaknya berfungsi dengan baik dan /var/log/mail.log mengatakan: "ubuntu postfix / master [9720]: daemon dimulai - versi 2.8.5, konfigurasi / etc / postfix"
Tetapi ketika saya menjalankan skrip PHP saya (yang bekerja dengan baik dengan Windows dan Sendmail), itu hanya berjalan melalui dan tidak ada yang terjadi, bahkan kesalahan dicatat.
Apa yang sebenarnya ingin saya capai:
Saya bekerja secara lokal di situs web e-commerce. Ini berjalan dengan baik di server web khusus, tetapi saya ingin juga menjalankannya secara lokal untuk alasan yang jelas. Dalam beberapa kasus, ia mengirim email, dan saya hanya ingin dapat menerimanya dengan Thunderbird atau dengan cara lain apa pun. Apakah menggunakan Postfix berlebihan di sini? Saya tidak perlu menerima email - saya hanya ingin membuat email yang dikirim terlihat. Saya sepertinya tidak bisa menemukan langkah-demi-langkah-tutorial yang bermanfaat untuk masalah ini (baik mengenai Senmail maupun Postfix - tetapi, jujur saja, saya sangat baru di Linux).
sendmail_path = "/usr/sbin/sendmail -t -i"
Untuk mengirim email dari localhost (WAMP, XAMP, atau LAMP) Anda dapat menggunakan paket PHPMailer
Ini akan menjadi instruksi yang sama yang diberikan dalam file readme ..
WAMP (windows):
Pertama, Anda harus mengedit "php.ini" Untuk menemukan file ini tampilkan phpinfo dengan menggunakan kode berikut dari server WAMP. Buat satu file php [setting.php] di dalam C: / wamp / www / dan tambahkan konten berikut ke file itu.
Ketik localhost / setting.php di browser. Di sana cari "Loaded Configuration File" Itu akan menjadi path ke php.ini Anda .
Dalam file php.ini hapus; (semi colon) yang diberikan kepada `extension = php_openssl.dll. Sekarang pengaturan server selesai ...
LAMP (Linux):
Dalam hal linux, Tidak perlu mengedit file php.ini seperti yang saya jelaskan poin pertama di bawah WAMP.
Satu lagi perubahan adalah proyek atau folder root Dokumen berbeda.
sumber
Untuk mengirim email (dengan paket sendmail) melalui Gmail dari localhost silakan periksa PHP + Ubuntu Kirim email menggunakan formulir gmail localhost mungkin jawaban lain.
sumber