我有一個python腳本在本地主機上運行SMTP服務器。這是我非常簡單的代碼:python SMTP - 套接字錯誤
import smtpd
import asyncore
class CustomSMTPServer (smtpd.SMTPServer):
def process_message(self, peer, mailfrom, rcpttos, data):
print 'Receiving message from:', peer
print 'Message addressed from:', mailfrom
print 'Message addressed to :', rcpttos
print 'Message length :', len(data)
server = CustomSMTPServer(('127.0.0.1', 25), None)
asyncore.loop()
如果我從本地主機上的電子郵件中STMP服務器成功到達運行的電子郵件客戶端發送電子郵件。但是,如果我從位於同一本地網絡(192.168.1.1/24)的計算機上運行的電子郵件客戶端發送電子郵件,它將不會成功。這裏下面的錯誤,我從Outlook Express中得到:
The connection to the server has failed. Account 'localhost', Server '192.168.1.115'.
Protocol SMTP, Port: 25, Secure(SSL): No, Socket Error: 10061, Error Number: 0x800CCC0E
以防萬一,我停用邁克菲防火牆在兩臺PC,但我仍然得到同樣的錯誤。
哪裏可以解決問題?它與asyncore.loop()方法有什麼關係?謝謝!