|
|
|
|
Tu peux partir des sources d'apache mais alors là bon courage.
|
L'univers des serveurs http Open Source ne se limite pas à Apache
|
Salut,
|
Dans l'absolu, c'est pas très compliqué.
GET /repertoire/fichier HTTP/1.1 ou bien: GET http://monserveur.com/repertoire/fichier HTTP/1.1 Ce à quoi le serveur répond par: HTTP/1.1 200 OK Content-Length: 333 Content-Type: text/html; charset=iso-8859-1 suivi de 2 retours à la ligne, puis le fichier lui-même. Il y a quelques raffinements (par exemple le navigateur peut dire quelle est sa language, le serveur peut indiquer l'âge du fichier, etc.), mais le principe est là. Le gros du boulot, ça va être: - de parser les requêtes qui arrivent (extraire l'URL et d'éventuel paramètres) - écrire le dispatcheur d'URLs (exécuter des méthodes différentes en fonction des URL, ou bien renvoyer des fichiers stockés sur disque) - construire la réponse (choisir le Content-Type correspondant au fichier (ex: 'image/jpeg' pour les fichiers .jpg), envoyer un code erreur HTTP précis (404 si document pas trouvé, etc.). “Life is short - You need Python” -- Bruce Eckel, membre du comité ANSI C++ |
La RFC de HTTP est dispo ici :
|
Oui dans l'absolu y a rien de compliqué si tu te limite au basique, dès lors que tu sais manipuler les sockets dans le langage qu'on t'a imposé. Après c'est comme tout, on peut pousser très loin le schmilblick.
|