Linux伺服器django傳送郵件

2021-09-13 01:25:23 字數 1572 閱讀 1256

一、在settings.py檔案裡新增配置。(python傳送郵件的埠25和465都可以,但是如果是阿里雲伺服器,埠25可能不能使用。建議使用埠465傳送郵件)

# 傳送郵件設定

email_backend = 'django.core.mail.backends.smtp.emailbackend'

email_use_ssl = true

# email_host郵件傳送的伺服器

email_host = 'smtp.ym.163.com'

# email_port傳送郵件埠

email_port = 465

# email_host_user傳送郵件的郵箱

email_host_user = '***@163.com'

# email_host_password 傳送郵件的郵箱授權碼

email_host_password = 'yyyyy'

default_from_email = email_host_user

二、傳送郵件的後台**(示例為傳送的郵件內容為html,傳送郵件使用的是emailmultialternatives)

from django.conf import settings

from email.header import header

from email.utils import parseaddr, formataddr

from django.core.mail import emailmultialternatives

def send_verification_code(request):

# 傳送的郵箱賬號

sender = settings.default_from_email

# 郵件抬頭

subject = '標題'

# 郵件內容

"*** @ 163.com

" + \

datetime.datetime.now().strftime('%y%m%d').format(y='年', m='月', d='日')

# 設定標題的字元編碼

message['subject'] = header(subject, 'utf-8')

# 傳送設定

msg = emailmultialternatives(message['subject'], mail_msg,

_format_addr(u'傳送者名稱 <%s>' % sender),

[_format_addr(u'接受者名稱 <%s>' % email)])

# 郵件內容的格式

msg.content_subtype = "html"

# 傳送

msg.send()

# 格式轉換方法

def _format_addr(s):

name, addr = parseaddr(s)

return formataddr((header(name, 'utf-8').encode(), addr))

Django伺服器部署

ubuntu伺服器預設是python2 此版本不要刪除,不然會出問題 如果你的專案是python3,伺服器也安裝python3,django版本最好也統一,不然可能會出問題。sudo apt get install python3.6sudo rm usr bin pythonsudo ln s u...

關閉django伺服器

在執行django伺服器的時候,突然遠端連線斷掉了,django伺服器突然關閉不了,之後發現是8080埠是有乙個程序在後台一直執行著的。需要把程序給關掉就可以了。預設啟動的服務埠是8000,可自行指定 python manage.py runserver 8080 不結束通話地執行命令,輸出日誌到檔...

部署django到Linux伺服器上

scp xx username ip 傳送檔案到伺服器上 scp sychen blog.zip ubuntu 62.233.256.122 home sychen blog 建立虛擬環境 python m venv venv django blog 進入虛擬環境 source venv djang...