Fehler im cgi-Script mit socket.gethostbyname

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Benutzeravatar
Mawilo
User
Beiträge: 446
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

Fehler im cgi-Script mit socket.gethostbyname

Beitragvon Mawilo » Mittwoch 4. April 2007, 22:54

Hallo,

ich habe auf einer Webseite ein cgi-Script, mit dem Daten in eine Datenbank geschrieben werden und an eine angegebene Adresse ein Email mit einer Datei gesendet wird. Das funktioniert auch fast. Nur beim Senden des Emails habe ich Probleme. Beim lokalen test mit xampp hat alles funktioniert.
Zum Senden des Mails verwende ich simplemail von gerold (vielen Dank :lol: )

Hier die Fehlermeldung, die cgitb ausspuckt:

Code: Alles auswählen

 120         if email.send():
 
  121             self.printMessage('Email send successfully')
 
  122         else:
 
email = <simplemail.Email object>, email.send = <bound method Email.send of <simplemail.Email object>>
 /mnt/kw1/01/953/00000029/htdocs/JoPop/cgi-bin/simplemail.py in send(self=<simplemail.Email object>)
  518         # Am SMTP-Server anmelden und evt. authentifizieren
 
  519         #
 
  520         smtp = smtplib.SMTP()
 
  521         if self.smtp_server:
 
  522             smtp.connect(self.smtp_server)
 
smtp undefined, global smtplib = <module 'smtplib' from '/opt/RZpython2/lib/python2.4/smtplib.pyc'>, smtplib.SMTP = <class smtplib.SMTP>
 /opt/RZpython2/lib/python2.4/smtplib.py in __init__(self=<smtplib.SMTP instance>, host='', port=0, local_hostname=None)
  256             else:
 
  257                 # We can't find an fqdn hostname, so use a domain literal
 
  258                 addr = socket.gethostbyname(socket.gethostname())
 
  259                 self.local_hostname = '[%s]' % addr
 
  260
 
addr undefined, global socket = <module 'socket' from '/opt/RZpython2/lib/python2.4/socket.pyc'>, socket.gethostbyname = <built-in function gethostbyname>, socket.gethostname = <built-in function gethostname>

gaierror: (8, 'node name or service name not known')
      args = (8, 'node name or service name not known')


Nach der Meldung gibt es ein Problem mit der Zeile:
[code=] 258 addr = socket.gethostbyname(socket.gethostname())[/code]
Ich befasse mich erst seit kurzem mit dieser Materie. Wie kann ich den Fehler beheben?
Hier ist ein Bild der Meldung.

Viele Grüße
Mawilo
Zuletzt geändert von Mawilo am Dienstag 4. September 2007, 18:51, insgesamt 1-mal geändert.
Benutzeravatar
Mawilo
User
Beiträge: 446
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

Beitragvon Mawilo » Freitag 6. April 2007, 22:43

Dank der Mailingliste habe ich den Fehler gefunden. Im Script simplemail.py von Gerold habe ich die Zeile 520 geändert auf:

Code: Alles auswählen

smtp = smtplib.SMTP(local_hostname=os.environ['HTTP_HOST'])

Natürlich muss os auch importiert werden.

Dann hat es funktioniert.

Wer ist online?

Mitglieder in diesem Forum: Google [Bot]