[winsock2] webserver



  • hi,
    ich habe vor mir nen server (like apache ;)) zu bauen...

    nene..eigentlich sollte er nur das können:

    (ich hab nen dyndns.org account...)

    1-ein user gleichzeitig reicht
    2-wenn man die addy des account anspricht sollte mein server ansprechen...
    3-eine html datei sollte übertragen werden können
    4(-) vieleicht auch bilder tauglich sein...

    so was ich schon geschaft hab:
    1,2 (jedenfalls im netzwerk funzt es...(mit account addy))

    bei 3 und 4 häng ich..

    wenn mein server einfach nur das sendet gehts nicht...

    Content-type: text/html\n\n
    <html><head><title>sandstorm030</title></head>\n
    <body bgcolor=\"#E1E1E1\">
    </body></html>\n
    

    was muss ich senden damit das auch beim anderen rechner angezeigt wird?!
    und bei den bildern hab ich auch keine ahnung...

    ich freue mich auf jegliche hilfe 🙂



  • Schick doch einfach mal die Anfrage, die dein Programm bekommt an einen echten Webserver. Sowas ähnliches wie der dir dann liefert sollte dein Programm auch verschicken.



  • ich bin mir atm nicht sicher, aber content-length könnte wichtig sein.

    Bilder sendest du genau so wie HTML-Seiten nur mit nem passenden Content-Type und den anderen headern wie content-length.

    [ Dieser Beitrag wurde am 29.03.2003 um 20:37 Uhr von TriPhoenix editiert. ]



  • geht alles wunderbar hab das jetzt so:

    char buf__[] = "HTTP/1.1 200 OK \n";
    char bu_f_[] = "Content-Length: 87 \n";
    char bu__f[] = "Content-type: text/html\n\n";
    
    char buf___[] = "<html><head><title>TITEL</title></head>\n";
    char buf____[] = "<body bgcolor=\"#FFFFFF\"> \n";
    char buf__x_[] = "<img src=\"c:\\bild1.jpg\" width=\"679\" height=\"92\"> \n";
    char buf_____[] = "</body></html>\n";
    

    die variablen sehen jetzt etwas krank aus aber das ist nur ein test...



  • falls es wen interessiert google sendet das hier:

    HTTP/1.0 200 OK
    Content-Length: 3201
    Connection: Keep-Alive
    Server: GWS/2.0
    Date: Sat, 29 Mar 2003 19:09:51 GMT
    Content-Type: text/html
    Cache-control: private
    Set-Cookie: PREF=ID=7fab09263e72ad98:LD=de:TM=1048964991:LM=1048964991:S=iAas3Zns8vTpczeA; expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.de
    


  • ein problem gibt es jetzt noch:

    links?!

    wie bemerk ich jetzt das der user zB. nicht auf die hauptseite sondern das: foo.xx/hallo/hier.html will?



  • *langsam spammig werd..*

    hab auch das prob gelöst..
    (einfach das GET... auswerten..)

    *vorsatz mach: erst probieren dann posten*



  • hm... kaum recv ich des GET gedönse zeigt er mit die seite nit mehr an..

    char bu1[] = "HTTP/1.1 200 OK \n";
    char bu2[] = "Content-Length: 137 \n";
    char bu3[] = "Content-type: text/html\n\n";
    
    char bu4[] = "<html><head><title>------------</title></head>\n";
    char bu5[] = "<body bgcolor=\"#E1E1E1\"> \n";
    char bu6[] = "<img src=\"c:\\bild1.jpg\" width=\"679\" height=\"92\"> \n";
    char bu7[] = "</body></html>\n";
    
    /* mit dem gehts nicht...*/
    int rc;
    char buffer[150];
    rc=recv(connectedSocket,buffer,150,0);
    //[...]
    
    send(connectedSocket,bu1,17,0);
    send(connectedSocket,bu2,21,0);
    send(connectedSocket,bu3,25,0);
    send(connectedSocket,bu4,47,0);
    send(connectedSocket,bu5,25,0);
    send(connectedSocket,bu6,50,0);
    send(connectedSocket,bu7,15,0);
    

    nur wie soll ich denn sonst herausbekommen wohin der user will?!
    (link Geschichte..)


Anmelden zum Antworten