demande d'aide pour mettre une page d'un serveur en ligne

Bonjour
j’ai crée un webserveur arduino qui récupere les données d’un chauffe eau solaire pour les afficher sur un site web, tout fonctionne, seulement j’aimerais pouvoir le mettre en ligne(pour ne plus seulement le voir en localhost mais aussi à distance), or je ne sais pas comment faire :confused:
voici le programme:

int receptionBal;
int Tbal;
int receptionEch;
int Tech;
int ValAzimut;
int ValAngle;
int Tcap;
int Tamb;

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

// MAC address from Ethernet shield sticker under board
byte mac[] = { 0x90, 0xA2, 0xDA, 0x80, 0x0A, 0x32 };
IPAddress ip(172,18,153,26); // IP address, may need to change depending on network
EthernetServer server(80);  // create a server at port 80

void setup()
{
  Serial.begin(9600);
    Ethernet.begin(mac, ip);  // initialize Ethernet device
    server.begin();           // start to listen for clients
}

void loop()
{
  temperature();
  serveur();
}
void temperature()
{
  delay(1000);

  receptionEch=analogRead(A0); //lecture temperature echangeur
  Tech=(receptionEch-195)/1.384;
  Serial.print("Temperature echangeur = "); //affichage
  Serial.println(Tech); //affichage temperature echangeur puis retour chariot
  
  receptionBal=analogRead(A1); //lecture temperature ballon
  Tbal=(receptionBal-195)/1.384;
  Serial.print("Temperature ballon = "); //affichage 
  Serial.println(Tbal); //affichage temperature ballon puis retour chariot

ValAngle=1;
ValAzimut=1;
Tcap=1;
Tamb=1;
}
void serveur()
{
    EthernetClient client = server.available();  // try to get client

    if (client) {  // got client?
        boolean currentLineIsBlank = true;
        while (client.connected()) {
            if (client.available()) {   // client data available to read
                char c = client.read(); // read 1 byte (character) from client
                // last line of client request is blank and ends with \n
                // respond to client only after last line received
                if (c == '\n' && currentLineIsBlank) {
                    // send a standard http response header
                    client.println("HTTP/1.1 200 OK");
                    client.println("Content-Type: text/html");
                    client.println("Connection: close");
                    client.println("Refresh: 1");
                    client.println();
                    // send web page
                   client.println("<!DOCTYPE html >");
        client.println("<html lang=\"fr\">");
          client.println("<head>");
            client.println("<meta http-equiv=\"refresh\" content=1\"text/html\" charset=\"utf-8\" />");
            client.println("<link  rel=\"stylesheet\" />");
   
   client.println("<style type=\"text/css\"> ");  
              client.println("body{text-align:center;font-family: Trebuchet ms,Comic sans ms, arial black;}");
               client.println(".tableauUG, .tableauUL{position:center;margin: auto;margin-top: 5%;height: 100px;   width: 700px;}");
              client.println("td, th {border: thin solid #6495ed;   width: 50%;   text-align:center;}");
            client.println("</style>");

       

          client.println("</head>");
          client.println("<body >");
       
       client.println("<div id=\"bloc_page\">");
              client.println("<header>");
                client.println("<div id=\"titre_principal\">");
                  client.println("<h1>Controle du Chauffe-eau solaire</h1>");
            client.println("</div>");
    
          client.println("</header>");
    
              
                  client.println("<table class=\"tableauUG\">");
              client.println("<caption>Tableau d'information du chauffe eau solaire</caption>");
                client.println("<tr>");
                  client.println("<th>Position du chauffe eau</th>");
                  client.println("<th>Etat</th>");
                  client.println("<th>Caractéristique de UG</th>");
                  client.println("<th>Etat</th>");
                client.println("</tr>");
                client.println("<tr>");
                  client.println("<td>Position horizontale</td>");
                  client.println("<td>");
                 client.println(ValAzimut); 
                  client.println("</td>");
                  client.println("<td>T échangeur</td>");
                  client.println("<td>");
                 client.println(Tech); 
                  client.println("</td>");
                client.println("</tr>");
                client.println("<tr>");
                  client.println("<td>Position verticale</td>");
                  client.println("<td>");
                 client.println(ValAngle); 
                  client.println("</td>");
                  client.println("<td>T ambiante</td>");
                  client.println("<td>");
                 client.println(Tamb); 
                  client.println("</td>");
                client.println("</tr>");
                client.println("</tr>");
                          client.println("</span>");			
            client.println("</table>");
            client.println("<table class= \"tableauUL\" summary= \"exemple de structure d'un tableau de données 2 lignes, 2 colonnes\">");
              client.println("<span class=\"UL\"><tr>");
                client.println("<th>Caractéristiques du circuit</th>");
                client.println("<th>Etat</th>");
                client.println("<th>Caractéristiques de UL</th>");
                client.println("<th>Etat</th>");
              client.println("</tr>");
              client.println("<tr>");
                client.println("<td>Etat circuit primaire</td>");
                client.println("<td>");
                 client.println("?"); 
                  client.println("</td>");
                client.println("<td>T ballon</td>");
                client.println("<td>");
                 client.println(Tbal); 
                  client.println("</td>");
              client.println("</tr>");
              client.println("<tr>");
                client.println("<td>Etat circuit secondaire</td>");
                client.println("<td>");
                 client.println("?"); 
                  client.println("</td>");
                client.println("<td>T capteur</td>");
                client.println("<td>");
                 client.println(Tcap); 
                  client.println("</td>");
              client.println("</tr></span>");
            client.println("</table>");
            client.println("</center>"); 
                
                client.println("Arret du systeme
");
          
              client.println("<form method=\"GET\" action=\"\" >");
			client.println("<input type=\"submit\" value=\"arreter\" name=\"arret\" />");
    client.println("</form>");
            client.println("<footer>");
              client.println("<p class=\"texte\">Projet de Terminale Sti SIN 2013-2014</p>");
            client.println("</footer>");
      
        client.println("</body>");
      client.println("</html>");
                    break;
                }
                // every line of text received from the client ends with \r\n
                if (c == '\n') {
                    // last character on line of received text
                    // starting new line with next character read
                    currentLineIsBlank = true;
                } 
                else if (c != '\r') {
                    // a text character was received from client
                    currentLineIsBlank = false;
                }
            } // end if (client.available())
        } // end while (client.connected())
        delay(1);      // give the web browser time to receive the data
        client.stop(); // close the connection
    } // end if (client)
}

Salut,
Ajoute ces lignes :

byte gateway[] = { 192, 168, 1, 1 }; // IP local de ton router à modifier peut-être
byte subnet[] = { 255, 255, 255, 0 };

Change de port (80 c'est le HTTP classique, ça peut causer des conflits). Ouvre ce port sur ton pare-feu. Ton Arduino sera accessible à tonIP:tonport
Attention : tonIP = ton IP internet (celle de ta box) pas celle la : IPAddress ip(172,18,153,26);
Pour l'obtenir http://www.whatismyip.com depuis ton pc connecté au même routeur

Tuto en anglais :Arduino Tutorials – Chapter 16 – Ethernet | tronixstuff.com

C'est bien, tu as progressé depuis ton post Aide pour afficher des variables d'un programme arduino sur webserveur(sur SD) - Français - Arduino Forum

merci B@too j'ai suivi ce que tu m'as dis mais il y a quelques trucs que je ne comprends pas, le serveur est à mon lycée, quand je mets l'adresse IP que j'ai trouvé sur le site que tu m'as donné dans mon programme à "IPAdress ip("")", j'arrive sur une page qui me demande de me connecter au client(je pense que le routeur du reseau du lycée doit etre protégé), de plus je n'ai pas compris comment ouvrir un port sur mon pare feu.
et pour finir je ne suis pas sur de l'ip de mon routeur, c'est bien la passerelle par default?

Edit: j'ai demandé a mon prof et apparemment c'est le proxy du réseau qui bloque, donc soit il faut que je fasse ca cher moi ou soit que l'informaticien du reseau me donne l'acces.

Adriensti2d:
merci B@too j'ai suivi ce que tu m'as dis mais il y a quelques trucs que je ne comprends pas, le serveur est à mon lycée, quand je mets l'adresse IP que j'ai trouvé sur le site que tu m'as donné dans mon programme à "IPAdress ip("")", j'arrive sur une page qui me demande de me connecter au client(je pense que le routeur du reseau du lycée doit etre protégé), de plus je n'ai pas compris comment ouvrir un port sur mon pare feu.
et pour finir je ne suis pas sur de l'ip de mon routeur, c'est bien la passerelle par default?

par ce que tu crois que dans les lycées, on laisse comme ca tout passer? :slight_smile:
souvent il y a un server qui gère tout ca avec un router firewall pour gérer l'intranet et filtrer ce qu'il se passe sur les pc.
moralité, tu ne pourras pas arriver sur ta carte.

oui j'ai demandé a mon prof, j'ai edit ma réponse ^^'
bon du coup le prof m'as dis qu'on gerera ca en fin de projet, ou alors je ferais le serveur cher moi

Ah oui si tu es au lycée c'est pas du tout la même histoire