www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mal wieder Web Server


Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
bin inzwischen mit meinem EasyTCP und ATMEGA162 soweit gekommen daß ich
eine TCP Verbindung aufbauen kann und Daten empfangen kann.
Ich teste das erfolgreich mit einem TCP Testprogramm. Wenn ich nun mit
dem Internet Explorer auf meinen Webserver zugreife, so empfange ich
"Get /HHTP...." und antworte darauf mit "<html><body><p><i>Hallo
Welt!!!</i></font></p></body></html>". Leider zeigt mein Explorer
immer an daß er diese Seite nicht öffnen kann. Wenn ich genau diesen
Text in eine Datei "test.htm" einklebe und diese öffne so funzt es.
Was fehlt da das mein Web Server nicht schickt?? Ist bestimmt nur eine
Kleinigkeit, ich bekomm es aber nicht gebacken.
Vorab danke für eure Hilfe.

Gruß

Thomas

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich würde mal vermuten, daß dein browser nicht weiß dass es sich um eine
html datei handelt.
da war doch was das sich "header" nannte oder??

Autor: Ulrich Radig (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Die Verbindung muß auch wieder geschlossen werden :-)

Mfg Ulrich

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen,
danke erst mal für die Vorschläge, werde ich ausprobieren. Wieso sollte
mein Explorer nicht wissen daß es HTML ist? Wenn ich das gleiche in
einer HTM Datei öffne hab ich auch keinen Header und er zeigts an.
@Ulrich: Ich werde nach dem Text mal abkneifen und sehen was passiert.
Habe aber erst heute abend Zeit. Ist es so daß der Client die
Verbindung aufbaut und der Server wieder schließt?

Melde mich dann wieder.

Gruß

Thomas

Autor: Μαtthias W. (matthias) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

AFAIK können beide die Verbindung abbauen. Aber typischerweise baut der
die Verbindung ab der sie auch aufgebaut hat. Ich würde evtl. auf ein
fehlendes CR/LF oder sowas tippen.

Matthias

Autor: Kai markus Tegtmeier (kmt)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Versuch mal, mit z.B. Ethereal den Datenverkehr zwischen Server und
Client abzuhorchen. Das könnte schon weiterbringen.

Greetz
KMT

Autor: Thorsten Neumann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
bei der Kommunikation zwischen Browser und Webserver wird ein wenig
mehr an Informationen ausgetauscht als nur die gewünschte Webseite und
der HTML-Code.

Beginnen wir bei der Anfrage des Clients:

GET http://sleeper/AspHeute/SortedList/iterateforeach.aspx HTTP/1.0
Accept: */*
Referer: http://sleeper/AspHeute/SortedList/
Accept-Language: en-us
Proxy-Connection: Keep-Alive
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Q312461;
.NET CLR 1.0.3705)
Host: sleeper
Pragma: no-cache

Da der Browser neu geöffnet war, und ich keine andere Seite auf diesem
Server vorher angesurft hatte, wird kein Cookie an den Server
geschickt. Dafür aber erfährt der Server von uns, welchen Browser wir
verwenden, welche Sprachen von uns akzeptiert werden, und auch woher
wir kommen Und natürlich ist die erste Information wie die Seite
angefragt wird: GET oder POST.

Die Antwort des Servers ist zweigeteilt - und zwar durch eine
Leerzeile. Der erste Teil sind die Header der Antwort, nach der
Leerzeile folgt der eigentliche Content:

HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
Date: Mon, 04 Mar 2002 20:47:58 GMT
Cache-Control: private
Content-Type: text/html; charset=utf-8
Content-Length: 122

ASP.NET - aspDEdotnet@aspfriends.com<br>
C# - dotnetDEcsharp@aspfriends.com<br>
VB.NET - dotnetDEvb@aspfriends.com<br>

gruß
Thorsten

Quelle: "Mitlauschen bei der Browser-Webserver Kommunikation",
http://www.aspheute.com/artikel/20020305.htm

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo alle,
danke für die zahlreichen Antworten. Ein erster Test zeigt daß Ulrich
auf dem richtigen Dampfer war. Wenn ich die Verbindung nach dem Text im
Server abkneife so bekomme ich mein "Hallo Welt".
Die anderen Beiträge sehe ich mir in Ruhe an und werde das eine oder
andere daraus noch extrahieren und nutzen.
Eine weitere Hürde ist erstmal genommen.
DANKE!!

Gruß an alle

Thomas

Autor: Thomas Stütz (tstuetz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du solltest dir auch mal die RFC 2068 und 2616 anschauen
(evtl RFC822). RFC=Request for comments, offener Standart für alles was
im Netzwerk abläuft, also auch die Übertragunng einer HTML-Seite per
HTTP. Download bei http://www.rfc-editor.org/rfc.html

Außerdem sind es 2x CR+LF die das Ende des Headers anzeigen. Und zum
Schluß, im Antwort-Header wird "Date:" und "cache-control" nicht
unbedingt benötigt. Was der Browser aber brauchen kann
ist die "Content-length" (Größe der Seite in Bytes).

Gruss

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.