2017-01-03 92 views
1

我試圖發送激活電子郵件和重置電子郵件在Django。我正在使用Django註冊模塊,但註冊後,頁面返回到註冊頁面,並沒有發送任何電子郵件給我。 settings.py的 部分:django註冊模塊不發送電子郵件

DEBUG = False 

ALLOWED_HOSTS = ['mysite.com', 'www.mysite.com'] 

EMAIL_BACKEND ='django.core.mail.backends.smtp.EmailBackend' 
DEFAULT_FROM_EMAIL = '[email protected]' 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_HOST_PASSWORD = 'my pass' 
EMAIL_USE_TLS = True 
EMAIL_PORT = 1025 

# Application definition 

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'django.contrib.sites', 
    'posts', 
    'registration', 
    'django_countries', 
    'crispy_forms', 
    'django_forms_bootstrap', 
    'captcha', 
    ] 

ACCOUNT_ACTIVATION_DAYS = 7 
REGISTRATION_AUTO_LOGIN = True 
SITE_ID = 1 

點擊註冊按鈕後,瀏覽器等待這個頁面上2秒。

enter image description here

+0

傳出服務器和端口嘗試一些調試。即禁用tls並運行「netcat -lp 1025」並查看是否有某些郵件進入。也許甚至檢查你的郵件服務器日誌已經顯示出這個問題。或者你會注意到,沒有郵件發送到服務器/端口,配置仍然有問題。 – allo

+0

@allo我禁用TLS,我的設置是EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'modmozel.ir' EMAIL_PORT = 2096 DEFAULT_FROM_EMAIL = '[email protected]' EMAIL_HOST_USER = 「[email protected]」 EMAIL_HOST_PASSWORD =「將mypass」 EMAIL_USE_TLS =假 –

+0

和你收到的東西,在端口2096與netcat的或其他的一些TCP的調試工具,當聽?當郵件發送到此端口時,您應該看到類似「HELO myhostname」或「EHLO myhostname」的內容。 – allo

回答

2

您忘記添加

EMAIL_HOST = 'smtp.mysite.com' 

發送電子郵件。

+0

我加入,但沒有奏效。點擊註冊按鈕載入中2第二次的白頁上,並回頭 –

+0

註冊頁面後,我設置EMAIL_HOST =「localhost」的,但沒有工作,我用這 –

+0

,和它的作品對我很好, EMAIL_HOST =「smtp.mysite。 com公司 EMAIL_USE_TLS = 1 EMAIL_PORT = 587 EMAIL_HOST_PASSWORD = '測試' EMAIL_HOST_USER = '測試' SERVER_EMAIL = '[email protected]' 嘗試一次。 – Mahendra

0

如果使用的cPanel你必須首先創建一個電子郵件帳戶,然後再設置郵件CLIEN和非SSL設置部分寫在settings.py

EMAIL_BACKEND ='django.core.mail.backends.smtp.EmailBackend' 
EMAIL_HOST = 'outgoingserver' 
EMAIL_PORT = SMTP_port 
DEFAULT_FROM_EMAIL = 'your email account' 
EMAIL_HOST_USER = 'your email account' 
EMAIL_HOST_PASSWORD = 'email password' 
EMAIL_USE_TLS = True