GNU/Linux >> Belajar Linux >  >> Ubuntu

Bagaimana Agar Php Mengirim Email?

Saya menginstal Ubuntu 11.04, LAMP menggunakan taskel.

Saya menemukan bahwa PHP mail() tidak berfungsi.

Saya kira saya perlu mengaktifkannya atau sesuatu? Bagaimana cara melakukannya?

Jawaban Terbaik

Dari manual email php:

Persyaratan

Agar fungsi email
tersedia, PHP memerlukan
yang diinstal dan sistem email yang berfungsi. Program
yang akan digunakan ditentukan oleh
pengaturan konfigurasi di file php.ini
.

Ini berarti Anda harus menginstal semacam server surat dan mengkonfigurasi php untuk menggunakannya. Biasanya mailserver ini adalah postfix di Ubuntu. Namun – jika sisi php yang Anda kode akhirnya akan disimpan di sisi layanan hosting (mis. xmission), server email kemungkinan besar sudah diinstal di sana. Dalam hal ini, cukup uji situs Anda secara online, bukan secara lokal.

Jika Anda perlu mengujinya di sistem Anda sendiri atau bermaksud menghostingnya di server rumah Anda sendiri, lanjutkan dengan:

Instalasi Postfix

Instalasi:postfix / sudo apt-get install postfix Selama proses, Anda akan ditanya dalam mode mana Anda ingin menginstal postfix. Ada empat kemungkinan mode:

  • Internet :Server email Anda sendiri.
  • Satelit :Penyedia email eksternal (mis. Google) akan digunakan untuk mengirim dan menerima email. Server tidak akan menerima email apa pun.
  • Smarthost :Campuran antara keduanya. Email disimpan secara lokal tetapi dikirim melalui penyedia email eksternal.
  • Khusus lokal :Tidak akan perhatian Anda. Itu adalah server surat internal sistem. Anda hanya dapat mengirim email dari pengguna ke pengguna di sistem.

Opsi penginstalan lainnya bergantung pada pilihan Anda untuk konfigurasi umum ini.

Kemungkinan besar Anda akan memilih instalasi satelit. Itu berarti email akan dikirim menggunakan penyedia eksternal. Sebagai smtp-server (server surat keluar), Anda kemudian harus menentukan penyedia Anda smtp. Opsi lainnya sudah cukup jelas.

Konfigurasi Pasca Instalasi

Sebagian besar server smtp memerlukan otentikasi kata sandi untuk mengirim email. Jadi postfix perlu mengetahui kata sandi itu. Juga ada hal-hal seperti enkripsi yang perlu dipertimbangkan (yang harus Anda cari di Google). Ini adalah bagaimana Anda mengkonfigurasi postfix menggunakan otentikasi kata sandi (sasl):

  • Instal libsasl2-modul dan sasl2-bin dengan mengeklik ikon Pusat Perangkat Lunak atau dari terminal menggunakan:

    sudo apt-get install libsasl2-2 libsasl2-modules sasl2-bin
    
  • Aktifkan sasl-auth dengan menambahkan baris ini ke /etc/postfix/main.cf

     # add to /etc/postfix/main.cf
     smtp_sasl_auth_enable = yes
     smtp_sasl_security_options = noplaintext noanonymous
     smtp_sasl_password_maps = hash:/etc/postfix/sasl_password
    
  • Buat file /etc/postfix/sasl_password dengan garis seperti:

     smtp.gmail.com [email protected]:USERPASSWORD
    

    Ganti kata sandi, nama pengguna, dan alamat smtp yang sebenarnya.

  • Perbarui postfix:

     sudo chmod 600 /etc/postfix/sasl_password # for safety of your smtp password
     sudo postmap hash:/etc/postfix/sasl_password 
     sudo postmap /etc/postfix/sender_canonical
     sudo /etc/init.d/postfix restart   
    

    Anda mungkin harus menghindari bug 'izin ditolak' dengan chown postfix:postfix /etc/postfix sebelumnya.

Terkait:Saya tidak dapat menginstal jadwal gnome di Ubuntu 16.04?

Ini harus dilakukan di sebagian besar kasus. Namun beberapa penyedia smtp memerlukan alamat tertentu sebagai pengirim atau enkripsi.

Terkait:PEAR::Antarmuka email mungkin juga menarik bagi Anda.

Gmail (dan mungkin layanan lain) mungkin tidak suka bahwa Anda mencoba mengirim email dengan cara ini karena dapat dianggap tidak aman menurut standar mereka, dan akan memblokir upaya Anda yaitu tidak ada yang akan terjadi di layar atau di suatu tempat dari keseluruhan proses akan memblokir otentikasi Anda. POP3 Anda juga harus diaktifkan.

Untuk mengatasi itu lihat di sini. (Jika Anda ingin aman, buat akun Gmail palsu)


Ubuntu
  1. Cara Menginstal dan Mengkonfigurasi Postfix di Ubuntu 20.04

  2. Bagaimana cara Mengirim Email dari Baris Perintah?

  3. Bagaimana cara menghitung pesan dari mailq Postfix?

  1. Cara menginstal dan mengkonfigurasi Postfix

  2. Ubuntu – Bagaimana Agar Pam_exec Menjalankan Script Sebagai Pengguna Saat Ini?

  3. Bagaimana Cara Menghapus Applet Indikator Ikon Surat?

  1. Cara menginstal server email postfix di RHEL 8 / CentOS 8

  2. Cara Mengatur Server Email Postfix di Ubuntu 16.04 (Dovecot - MySQL)

  3. Bagaimana Cara Mengirim Pesan Xmpp Menggunakan Command-line?