اذهب إلى المحتوى

البحث في الموقع

المحتوى عن 'sendmail'.

  • ابحث بالكلمات المفتاحية

    أضف وسومًا وافصل بينها بفواصل ","
  • ابحث باسم الكاتب

نوع المحتوى


التصنيفات

  • الإدارة والقيادة
  • التخطيط وسير العمل
  • التمويل
  • فريق العمل
  • دراسة حالات
  • التعامل مع العملاء
  • التعهيد الخارجي
  • السلوك التنظيمي في المؤسسات
  • عالم الأعمال
  • التجارة والتجارة الإلكترونية
  • نصائح وإرشادات
  • مقالات ريادة أعمال عامة

التصنيفات

  • مقالات برمجة عامة
  • مقالات برمجة متقدمة
  • PHP
    • Laravel
    • ووردبريس
  • جافاسكربت
    • لغة TypeScript
    • Node.js
    • React
    • Vue.js
    • Angular
    • jQuery
    • Cordova
  • HTML
  • CSS
    • Sass
    • إطار عمل Bootstrap
  • SQL
  • لغة C#‎
    • ‎.NET
    • منصة Xamarin
  • لغة C++‎
  • لغة C
  • بايثون
    • Flask
    • Django
  • لغة روبي
    • إطار العمل Ruby on Rails
  • لغة Go
  • لغة جافا
  • لغة Kotlin
  • لغة Rust
  • برمجة أندرويد
  • لغة R
  • الذكاء الاصطناعي
  • صناعة الألعاب
  • سير العمل
    • Git
  • الأنظمة والأنظمة المدمجة

التصنيفات

  • تصميم تجربة المستخدم UX
  • تصميم واجهة المستخدم UI
  • الرسوميات
    • إنكسكيب
    • أدوبي إليستريتور
  • التصميم الجرافيكي
    • أدوبي فوتوشوب
    • أدوبي إن ديزاين
    • جيمب GIMP
    • كريتا Krita
  • التصميم ثلاثي الأبعاد
    • 3Ds Max
    • Blender
  • نصائح وإرشادات
  • مقالات تصميم عامة

التصنيفات

  • مقالات DevOps عامة
  • خوادم
    • الويب HTTP
    • البريد الإلكتروني
    • قواعد البيانات
    • DNS
    • Samba
  • الحوسبة السحابية
    • Docker
  • إدارة الإعدادات والنشر
    • Chef
    • Puppet
    • Ansible
  • لينكس
    • ريدهات (Red Hat)
  • خواديم ويندوز
  • FreeBSD
  • حماية
    • الجدران النارية
    • VPN
    • SSH
  • شبكات
    • سيسكو (Cisco)

التصنيفات

  • التسويق بالأداء
    • أدوات تحليل الزوار
  • تهيئة محركات البحث SEO
  • الشبكات الاجتماعية
  • التسويق بالبريد الالكتروني
  • التسويق الضمني
  • استسراع النمو
  • المبيعات
  • تجارب ونصائح
  • مبادئ علم التسويق

التصنيفات

  • مقالات عمل حر عامة
  • إدارة مالية
  • الإنتاجية
  • تجارب
  • مشاريع جانبية
  • التعامل مع العملاء
  • الحفاظ على الصحة
  • التسويق الذاتي
  • العمل الحر المهني
    • العمل بالترجمة
    • العمل كمساعد افتراضي
    • العمل بكتابة المحتوى

التصنيفات

  • الإنتاجية وسير العمل
    • مايكروسوفت أوفيس
    • ليبر أوفيس
    • جوجل درايف
    • شيربوينت
    • Evernote
    • Trello
  • تطبيقات الويب
    • ووردبريس
    • ماجنتو
    • بريستاشوب
    • أوبن كارت
    • دروبال
  • الترجمة بمساعدة الحاسوب
    • omegaT
    • memoQ
    • Trados
    • Memsource
  • برامج تخطيط موارد المؤسسات ERP
    • تطبيقات أودو odoo
  • أنظمة تشغيل الحواسيب والهواتف
    • ويندوز
    • لينكس
  • مقالات عامة

التصنيفات

  • آخر التحديثات

أسئلة وأجوبة

  • الأقسام
    • أسئلة البرمجة
    • أسئلة ريادة الأعمال
    • أسئلة العمل الحر
    • أسئلة التسويق والمبيعات
    • أسئلة التصميم
    • أسئلة DevOps
    • أسئلة البرامج والتطبيقات

التصنيفات

  • كتب ريادة الأعمال
  • كتب العمل الحر
  • كتب تسويق ومبيعات
  • كتب برمجة
  • كتب تصميم
  • كتب DevOps

ابحث في

ابحث عن


تاريخ الإنشاء

  • بداية

    نهاية


آخر تحديث

  • بداية

    نهاية


رشح النتائج حسب

تاريخ الانضمام

  • بداية

    نهاية


المجموعة


النبذة الشخصية

تم العثور على 1 نتيجة

  1. في هذا الدرس ستحتاج بعض الأمثلة للتعديل بما يتوافق مع حالتك لتعمل بشكل صحيح (مثل كلمات السّر)، أمّا الباقي فمعظمه سيكون قابلاً للنسخ واللصق. حول دالّة mail() في لغة PHP تَستخدِم دالّة mail() البرنامج الموجود في مسار sendmail_path لإرسال رسائل البريد الإلكتروني. وهذا معدٌّ كـَsendmail بشكلٍ افتراضي. ومع أن معظم تنصيبات نظام Linux تملك sendmail مثبتة بشكل مسبق، فإنّك ستواجه بعض الصعوبات في إعداد تسجيلات SPF/PTR وتوليد مفاتيح DKIM وبعض الأمور الأخرى حتى تتأكد بأن رسالة البريد المرسلة بواسطة سكربت الـPHP لن يتم تعليمه كرسالة بريدٍ ضارة (spam). يمكن استخدام بروتوكول MSMTP - وهو أحد عملاء SMTP - لإرسال رسائل البريد باستخدام خوادم SMTP من طرف ثالث، ويمكن استخدام ذلك في دالّة mail() عوضاً عن sendmail. التثبيت لتثبيت برتوكول MSMTP على نظام Fedora Linux استخدم yum كالاتي: yum install msmtp وبما أن مستودع CentOs لا يحتوي على حزمة RPM لـMSMTP ، فإننا سنحتاج الى تنصيبها من المصدر: yum install make gcc pkgconfig wget http://sourceforge.net/projects/msmtp/files/msmtp/1.4.31/msmtp-1.4.31.tar.bz2/download tar -xvf msmtp-1.4.31.tar.bz2 cd msmtp-1.4.31 ./configure make make install في وقت كتابة هذا المقال فإن آخر إصدار متوفر هو 1.4.31، ولكن قد تتوفر إصدارات أخرى في المستقبل، وللحصول عليها قم بزيارة هذه الصفحة. على توزيعة Ubuntu/Debian استخدم apt-get : apt-get install msmtp ولمستخدمي Arch Linux : sudo pacman -S msmtp إعداد بروتوكول MSMTP إن ملف الإعدادات الخاص ببروتوكول MSMTP محفوظ في ~/.msmtprc لكل مستخدم، وملف الإعدادات الشامل للنظام هو /etc/msmtprc. قم الآن بفتح ملف الإعدادات في دليلك (directory): vi ~/.msmtprc قم بإضافة هذه الأسطر إلى حساب Yahoo: account yahoo tls on tls_starttls off tls_certcheck off auth on host smtp.mail.yahoo.com user user1 from user1@yahoo.com password yourYahooPa5sw0rd وبالنسبة للـGmail استخدم الإعدادات التالية: account gmail tls on tls_certcheck off auth on host smtp.gmail.com port 587 user user1@gmail.com from user1@gmail.com password yourgmailPassw0rd يمكن أن يحتوي هذا الملف على أكثر من حساب، فقط تأكد بأن تكون قيمة account لكل قسم مختلفة عن الأخرى. قم بحفظ الملف واستعمل chmod لجعل هذا الملف قابلاً للقراءة فقط من قبل المالك لأنه يحتوي على كلمات مرور. الخطوة التالية تعد إجبارية لأن بروتوكول msmtp لن يعمل إذا كانت الصلاحيات أكثر من 600. chmod 600 ~/.msmtprc قبل تنفيذ ذلك في PHP، تحقق باستخدام سطر الأوامر لتتأكد أن كل شيء يعمل بشكل سليم. للقيام بذلك، قم بإنشاء ملفٍ نصيٍّ عادي وضع فيه النص الآتي (النص عبارة عن رسالة بريد قصيرة): echo -e "From: Alice <alice@example.com> \n\ To: Bob <bob@domain.com> \n\ Subject: Hello World \n\ \n\ This email was sent using MSMTP via Gmail/Yahoo." >> sample_email.txt قم الآن بإرسال البريد: cat sample_email.txt | msmtp --debug -a gmail bob@domain.com استبدل كلمة gmail بكلمة yahoo أو ما قمت بإدخاله مسبقاً في خيار account. سوف ترى العديد من الرسائل بسبب المعطى --debug. يُستخدَم هذا لجعل اكتشاف وتصحيح الأخطاء أمراً سهلاً إذا لم تعمل الأمور كما يجب. إذا تلقّى bob@domain.com هذا البريد فإن كل شيء قد تم تنصيبه بشكل صحيح. لذلك قم بنسخ هذا الملف إلى مُجلّد /etc باستخدام السطر التالي: cp -p ~/.msmtprc /etc/.msmtp_php قم بتغيير الملكية إلى اسم المستخدم الذي يعمل الخادوم تحته. قد يكون ذلك apache، www-data أو nobody اعتماداً على توزيعة الـLinux الموجودة في الخادوم الإفتراضي الخاص بك (VPS) وعلى خادوم الويب المثبت: chown www-data:www-data /etc/.msmtp_php إعداد وتهيئة PHP افتح ملف php.ini والذي قد يختلف مكان وجوده باختلاف نظام التشغيل (OS) ونوع PHP المثبت (مثل PHP CGI، mod_php، PHP-FPM …الخ): vi /etc/php5/php.ini ابحث عن السطر الاتي: sendmail_path = وعندما تجده قم بتعديله عن طريق إضافة المسار الخاص بأمر msmtp ليصبح كما يلي: sendmail_path = "/usr/bin/msmtp -C /etc/.msmtp_php --logfile /var/log/msmtp.log -a gmail -t" يدوياً، أنشىء ملف سجل (log file) وقم بتغيير ملكيته (ownership) الى اسم المستخدم الذي يعمل به خادوم الويب: touch /var/log/msmtp.log chown www-data:www-data /var/log/msmtp.log أعد تشغيل خادوم الويب لتطبيق التغييرات: service httpd restart في نظام Arch Linux يتم ذلك باستخدام الأمر systemctl: systemctl restart httpd اعتماداً على نظام التشغيل وخادوم الويب قم باستبدال httpd بالاسم المناسب. إذا كانت PHP تعمل كعملية منفصلة (مثل PHP-FPM) قم بإعادة تشغيله عوضاً عن ذلك: service php5-fpm restart ولإختبار هذه التنصيبة، قم بإنشاء سكربت PHP مع دالّة mail() بسيطة: <?php if(mail("receipient@domain.com","A Subject Here","Hi there,\nThis email was sent using PHP's mail function.")) print "Email successfully sent"; else print "An error occured"; ?> قم بالدخول إلى هذا الملف باستخدام إحدى المتصفحات: http://www.example.com/file.php اذا لم يتم إرسال البريد فيمكنك التحقق من وجود أي أخطاء عبر سجل msmtp: tail /var/log/msmtp.log أخطاء شائعة اذا لم يتم إرسال البريد عند استخدام سكربت PHP، فعليك التحقق مما يلي: تحقق من أنك قد قمت بالتعديل على ملف php.ini الصحيح. يمكن التأكد والتحقق من ذلك عن طريق إنشاء ملف phpinfo(); والتأكد من قسم Loaded Configuration File. قد يكون المسار الى ملف إعدادات msmtp خاطئًا أو أن الخادوم لا يملك الصلاحية لقراءة هذا الملف. تحقق اذا ما تم إرسال أي بريد وذلك عن طريق تشغيل السكربت باستخدام سطر أوامر PHP: php /var/www/html/file.php ترجمة -وبتصرّف- للمقال How To Use Gmail or Yahoo with PHP mail() Function لصاحبه Jesin A
×
×
  • أضف...