0

現在、Pythonスクリプトを一晩実行するサーバー(Windows 2003 sp2)があり、スクリプトが正しく実行されたかどうかをメールで通知します。これらのスクリプトを新しいサーバー(Windows 2003 SP2)に転送していますが、スクリプトがsmtplibモジュール、pythonwinIDEで次のエラーが発生します。

  File "D:\Python26\ArcGIS10.0\lib\smtplib.py", line 239, in __init__
    (code, msg) = self.connect(host, port)
  File "D:\Python26\ArcGIS10.0\lib\smtplib.py", line 296, in connect
    (code, msg) = self.getreply()
  File "D:\Python26\ArcGIS10.0\lib\smtplib.py", line 340, in getreply
    raise SMTPServerDisconnected("Connection unexpectedly closed")
SMTPServerDisconnected: Connection unexpectedly closed

スクリプトに電子メールを送信させるためにサーバー上で行う必要があることはありますか?

ありがとう

4

2 に答える 2

3

Pythonコードが以前のサーバーで機能した場合、Pythonコード自体に問題がある可能性はほとんどありません。すべてが正しく機能していることを確認するために、telnetセッションを使用して基本的な電子メール送信機能のトラブルシューティングを行うことをお勧めします。telnetを使用したSMTP機能のテスト例は、次のURLで入手できます。

問題は、Pythonコードが実行されているサーバーまたは電子メールサーバー自体に関連するファイアウォールにある可能性があります。問題は、メールサーバー自体の構成が特定のシステムからの送信メールのみを受け入れるように構成されていることでもある可能性があります。

于 2012-09-25T10:22:23.970 に答える
1

これ接続の問題であり、コードの問題ではないため、「ファイアウォールがオフになっています」というコメントは役に立ちません。サーバーは稼働していますか?それがリッスンしているポートは外部から到達可能ですか?クライアントはサーバーのIPアドレスに接続できますか?指定されたポートへの接続は許可されていますか?クライアントとサーバーの間に干渉する可能性のある他のネットワークデバイスはありますか?クライアントとサーバー間のネットワークのすべての部分を実際に考慮する必要があります。

于 2012-09-25T10:45:24.217 に答える