Aide programmation serveur internet (hébergement page web)

Bonjour, je suis en terminale STI2D mon projet de cette année est de faire un serveur web qui héberge une page internet.
J'ai fais mon code mais je ne suis pas sur j'aimerais que vous me dites ce que je devrais faire pour améliorer ce code.

#include <SPI.h>
#include <Ethernet.h>


byte mac [] = {"90 , A2 , DA , 00 , 9B , 6C"}; // adressage mac, ip et passerelle
IP= (192 , 168 , 50 , 30 );
byte gateway [] : (192 , 168 , 0 , 2 );
Ethernet.Server (80);  // utilisation port 80 pour héberger serveur http (héberge page web)
Ethernet.begin(mac, IP, gateway);




void setup();
{   
  Serial.begin(9600); // connexion au port série pour recevoir les données 
    while(!Serial);   // attente connexion série pour démarrer serveur
      Serial.read;  
  Server.begin();     // démarage du serveur 
  Serial.print("server is at");
  Serial.println(Ethernet.localIp());
}

void loop()                                                   // connexion d'un client 
{ 
  Ethernet.Client client = server.available();                 
  if (client) {
                Serial.println("new client");
              booleancurrentLinelsBlank = true;
              while (client.connected())
                { 
                  if (client.available()){
                    char c = client.read();
                    Serial.write(c);
                    
                    (c=='\n'&&currentLinelsBlank)
                      {
                        client.println("HTTP/1.1 200 OK");                              // début de la programmation du site
                        client.println("Content- Type: text/html");
                        client.println("Connection: close");                        
                        client.println("<!DOCTYPE HTML>");
                        client.println("<html>");
                        client.println("<href='http://server.com/style.css'> de rel='stylesheet' "); // ajoute le fichier "style.css" pour le design de la page 
                        client.println("<head>");
                        client.println("<meta charset="utf-8" />"); // indique que c'est une page web
                        client.println("<meta http-equiv="refresh" content="30">"); // rafraichit la page toute les 30s 
                        client.println("<p>");
                        client.print(" Ski de fond ");
                        client.println("</p>");
                        client.println("</head>");
                        client.println("<body>");
                        client.println("<header>");
                        client.println("<h1>");
                        client.println("<p>");
                        client.print(" Praz de Lys Sommand");
                        client.println("</p>");
                        client.println("</h1>");
                        client.println("<h2>");
                        client.println("<p>");
                        client.print(" Club de ski de fond ");
                        client.println("</p>");
                        client.println("</h2>");
                        client.println("<nav>");
                        client.println("<ul>");
                        client.println("<li>"); 
                        client.print("<a href="skidefond.html"> <strong> Accueil </strong> </a>)"
                        client.println("</li>");
                        client.println("<li>");
                        client.print("<a href="competition.html"> <strong> Compétition </strong> </a>");     // seulement le print est affiché 
                        client.println("</li>");
                        client.println("<li>");
                        client.print("<a href="contact.html"> <strong> Contact </strong> </a>");
                        client.println("</li>");
                        client.println("</ul>");
                        client.println("</nav>");
                        client.println("</header>";
                        client.println("<section>");
                        client.println("<article>");
                        client.println("<h2>");
                        client.println("<p>");
                        client.print(" Nom de la course :  ");
                        client.println("</h2>");
                        client.println("<ul>");
                        client.print("Concurents en course :");
                        client.println ("
");
                        client.print("Concurrents en attentes :");
                        client.println("
");
                        client.print("Prochain à partir : ");
                        client.println("
");  
                        client.print("Prochain départ dans : ");
                        client.println("
");
                        client.println("</article>");
                        client.println("<footer">;
                        client.println("</p>)");
                        client.print("<Copyright Julien Maugis - Tous droits réservés>");
                        client.println("</footer">);
                        client.println("</body">);
                        client.println("</html>");
                        break;
                          if (c=='\n'){
                            currentLinelsBlank = true
                          }
                          else if (c != '\r'); {
                            currentLinelsBlanck = false;
                          }
                      }
                  }
                  delay(1000);
                   client.stop();                                                // on ferme la connexion
                     Serial.println("client disconnected");k
                }
                    else
                  {
                    Serial.println("Server not available");
                                                              }
  
}

Bonjour,

Juste par curiosité, pourquoi avoir fait ça sur un Arduino ?

Le prof a décidé de nous imposer la contrainte que tout doit être fait avec Arduino :roll_eyes: Du coup j'ai dû tout faire sur Arduino ^^

J'espère que ça ne t'a pas dégoûté de créer une page Web.
Je te rassure, dans la vraie vie c'est moins tordu qu'une suite de client.println...

Non franchement ça va ^^ j'en avais déjà fais deux trois basiques en HTML et Css même si c'est vraiment très chiant ^^

Hello,
Si tu as un shield avec une carte SD tu peux rajouter une feuille CSS que tu va lire sur la carte SD avant d'afficher la page ce qui te permet de changer a mise en page facilement et de faire qqch de plus sympa.

:wink:

Je possède un shield avec carte sd je vais ajouter le fichier CSS sur la carte. Savez vous si on peut connecter une page Web édité par Arduino et le mettre en ligne.
On m'a suggéré de passer par un dns mais je ne suis pas sur

Si tu as un serveur chez toi oui, sinon il te faudra trouver un hébergement ailleurs ou passer par le dyndns.

Et il ne faudra pas oublier de rediriger le bon port de ta box vers ton arduino.