This shows you the differences between two versions of the page.
|
sde2:teme:tema_fr_4_rust [2022/05/11 16:18] alexandru.radovici |
sde2:teme:tema_fr_4_rust [2022/05/23 13:36] (current) alexandru.radovici |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Devoir 4 - Serveur web ====== | + | ====== Devoir 4 - Rustywebserver ====== |
| Le but de ce devoir est de créer un serveur Web qui doit servir des fichiers et exécuter des scripts. | Le but de ce devoir est de créer un serveur Web qui doit servir des fichiers et exécuter des scripts. | ||
| Line 32: | Line 32: | ||
| - | Si vous avez des questions concernant le devoir, posez-les en publiant un //issue// sur le github [[https://github.com/UPB-FILS-SdE2/questions]] avec le format // [busybox] <le titre de votre question> //. Vous aurez besoin d'un compte github pour publier des questions. | + | Si vous avez des questions concernant le devoir, posez-les en publiant un //issue// sur le github [[https://github.com/UPB-FILS-SdE2/questions]] avec le format // [webserver] <le titre de votre question> //. Vous aurez besoin d'un compte github pour publier des questions. |
| <note warning> | <note warning> | ||
| Line 45: | Line 45: | ||
| <code bash> | <code bash> | ||
| - | rustwebserver ROOT_FOLDER | + | rustwebserver PORT ROOT_FOLDER |
| </code> | </code> | ||
| Line 198: | Line 198: | ||
| </note> | </note> | ||
| + | ===== Log ===== | ||
| + | Au démarrage, le serveur imprimera ce qui suit: | ||
| + | <code> | ||
| + | Root folder: <ansolute path to root folder> | ||
| + | Server listening on 0.0.0.0:PORT | ||
| + | </code> | ||
| + | |||
| + | Pour chaque requête, le serveur imprimera une ligne: | ||
| + | <code> | ||
| + | $Request request_source_ip_address $Path -> status_code (status_text) | ||
| + | </code> | ||
| + | |||
| + | ===== Bonus ===== | ||
| + | |||
| + | Mettre en œuvre la liste des dossiers pour le serveur Web. Si le chemin demandé est un dossier, générez une réponse html au format suivant. | ||
| + | |||
| + | <code html> | ||
| + | <html> | ||
| + | <h1>$Request</h1> | ||
| + | <ul> | ||
| + | <li><a href="/..">..</a></li> | ||
| + | <li><a href="/file1">file1</a></li> | ||
| + | <li><a href="/file2">file2</a></li> | ||
| + | ... | ||
| + | </ul> | ||
| + | </html> | ||
| + | </code> | ||