मैं कनेक्शन की समय समाप्ति के साथ एक ही समस्या आ रही है। ऐसा लगता है कि डिफ़ॉल्ट Django SMTP लाइब्रेरी में SSL सॉकेट के आसपास समस्याएं हैं। Django के विकास संस्करण में EMAIL_USE_SSL = True
सेट करने का विकल्प है जो अंतर्निहित टीएलएस कनेक्शन (स्पष्ट के विपरीत, EMAIL_USE_TLS = True
द्वारा निर्दिष्ट) के उपयोग के लिए अनुमति देता है। आम तौर पर पूर्व (निहित) पोर्ट 465 का उपयोग करता है, जबकि बाद वाला (स्पष्ट) पोर्ट 587 का उपयोग करता है। Django docs देखें - संस्करण 1.5 के साथ विकास संस्करण की तुलना करें। ध्यान दें कि विकल्प EMAIL_USE_SSL
1.5 में मौजूद नहीं है।
इस प्रकार, समस्या यह है कि Zoho's default SMTP server uses port 465 and requires SSL है, लेकिन EMAIL_USE_TLS
विकल्प इस आवश्यकता को पूरा नहीं करता है। (साइड नोट: शायद इस विकल्प को False
पर सेट करने का प्रयास करें? मैंने कोशिश नहीं की।) वैसे भी, मेरा सबसे अच्छा अनुमान यह है कि यह एक Django-विशिष्ट समस्या है और इसे 1.7 तक हल नहीं किया जा सकता है।
आपकी समस्या के समाधान के लिए: आप निश्चित रूप से पायथन (2.7.1) के smtplib
(नीचे लिपि देखें) के साथ ज़ोहो के एसएमटीपी सर्वर तक पहुंच सकते हैं। इसलिए, यदि आप थोड़ा सा सुरुचिपूर्ण फिक्स चाहते हैं, तो आप उस मार्ग पर जा सकते हैं। मैंने Django 1.5.1 में इसका परीक्षण किया है और यह एक आकर्षण की तरह काम करता है।
यहाँ स्टैंड-अलोन पायथॉन लिपि (जो एक Django परियोजना में उपयोग के लिए अनुकूलित किया जा सकता) है:
import smtplib
from email.mime.text import MIMEText
# Define to/from
sender = '[email protected]'
recipient = '[email protected]'
# Create message
msg = MIMEText("Message text")
msg['Subject'] = "Sent from python"
msg['From'] = sender
msg['To'] = recipient
# Create server object with SSL option
server = smtplib.SMTP_SSL('smtp.zoho.com', 465)
# Perform operations via server
server.login('[email protected]', 'password')
server.sendmail(sender, [recipient], msg.as_string())
server.quit()
जांच करते हुए कि ऊपर स्क्रिप्ट अपने वेब परियोजना में यह प्लग से पहले अपने जोहो पहचान के साथ चलाता है की कोशिश करो। सौभाग्य!
स्रोत
2013-08-22 09:10:05
इस विधि मेरे लिए काम कर रहा है :) मैं कैसे संदेश – ZenOut
वर्क्स एक आकर्षण की तरह में html सामग्री भेजते हैं। अतिरिक्त: यदि आप एक से अधिक व्यक्तियों को ईमेल भेजना चाहते हैं, तो दो पंक्तियां बदलें: 'msg [' to '] =' [email protected]; u2 @ ex.com 'और 'server.sendmail (प्रेषक, [' [email protected] ',' [email protected] '], msg.as_string()) ' –
@ZenOut आप मल्टीपार्ट ईमेल का उपयोग करना होगा ..see https://docs.python.org/2/library/ ईमेल-example.html # id5 – Coderaemon