Gmail peut-il servir à héberger un site?

Discussion dans 'Gmail, Google Talk, Blogger et Orkut' créé par Hollaamic, 3 Avril 2005.

Tags:
  1. Hollaamic
    Hollaamic Nouveau WRInaute
    Inscrit:
    3 Avril 2005
    Messages:
    2
    J'aime reçus:
    0
    Bonjour,

    Puisque GMail vient de passer à un espace de stockage de 2Go, qu'il est possible apparement (d'après ce que j'ai lu sur le net) d'en faire un FTP ou un HD distant, je me dis que ca serait pas mal pour heberger un site sans pub sans payer et sans contrainte...
    Est-ce que quelqu'un aurait une idée sur la marche à suivre ou est-ce relativement infaisable ? :D
     
  2. rottman
    rottman WRInaute passionné
    Inscrit:
    6 Janvier 2004
    Messages:
    1 804
    J'aime reçus:
    0
  3. Hollaamic
    Hollaamic Nouveau WRInaute
    Inscrit:
    3 Avril 2005
    Messages:
    2
    J'aime reçus:
    0
    GMail pour heberger un site

    Oui en effet ce programme est fort pratique est tres simple à utiliser, mais ca ne fait qu'un disque dur distant, moi je voudrais faire en sorte que mon compte Gmail puisse par exemple contenir un dossier associé à une adresse, ensuite j'aurais juste à utiliser un logiciel DNS machin (g oublié) pour rediriger les gens dessus, le tout fonctionnant même quand mon PC est éteint.
    On peut peut-être faire à peu pres ca avec GMail Drive mais si c'est le cas je ne vois pas comment et j'aurais besoin d'un peu d'aide :D
     
  4. blue
    blue Nouveau WRInaute
    Inscrit:
    28 Mars 2005
    Messages:
    14
    J'aime reçus:
    0
    Vous êtes sûr que c'est bien légal tout ca ?
     
  5. JeunZ
    JeunZ WRInaute accro
    Inscrit:
    18 Février 2004
    Messages:
    3 942
    J'aime reçus:
    0
    Nan mais il est impossible je pense d'en faire un site internet !!!

    En faire un espace distant oui... En faire un site ça me parait impossible !
     
  6. Madrileño
    Madrileño Membre Honoré
    Inscrit:
    7 Juillet 2004
    Messages:
    31 738
    J'aime reçus:
    336
  7. Madrileño
    Madrileño Membre Honoré
    Inscrit:
    7 Juillet 2004
    Messages:
    31 738
    J'aime reçus:
    336
  8. ti_ouf
    ti_ouf WRInaute discret
    Inscrit:
    10 Avril 2005
    Messages:
    173
    J'aime reçus:
    0
    bonjour
    merci pour les liens c'est hyper sympas
    sauf qu'il va falloire traduire lol
     
  9. Madrileño
    Madrileño Membre Honoré
    Inscrit:
    7 Juillet 2004
    Messages:
    31 738
    J'aime reçus:
    336
  10. ti_ouf
    ti_ouf WRInaute discret
    Inscrit:
    10 Avril 2005
    Messages:
    173
    J'aime reçus:
    0
    il semblerait qu'on soit alors obligé de mettre notre ordi en serveur donc!
     
  11. Madrileño
    Madrileño Membre Honoré
    Inscrit:
    7 Juillet 2004
    Messages:
    31 738
    J'aime reçus:
    336
    Qui a dit que c'était 100% server ? Gmail est une boite mail déjà avec une passerelle qui est un hosting / server (ovh/amen/pages perso) tu peux te servir de ce qui est dans gmail comme d'une galerie photo c'est déjà pas mal :roll:
     
  12. Orion33
    Orion33 WRInaute discret
    Inscrit:
    20 Août 2004
    Messages:
    183
    J'aime reçus:
    0
    J'avais commencé ca, mais ya pas mal de bugs, et j'ai pas la motivation de faire quelque chose de finis.
    Permet d'hoster des fichiers sur un compte Gmail.
     
  13. Madrileño
    Madrileño Membre Honoré
    Inscrit:
    7 Juillet 2004
    Messages:
    31 738
    J'aime reçus:
    336
    Orion33 on peut voir la source du php ? :lol:
     
  14. Orion33
    Orion33 WRInaute discret
    Inscrit:
    20 Août 2004
    Messages:
    183
    J'aime reçus:
    0
    Page index:
    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Share-IT</title>
    <style type="text/css">
    <!--
    .Style1 {
    	font-family: Verdana, Arial, Helvetica, sans-serif;
    	font-size: 18px;
    }
    -->
    </style>
    </head>
    
    <body>
    <?php
    ini_set(display_errors,1);
    if ($_POST['action'] == "add") { 
    	if(!is_uploaded_file($_FILES['fichier']['tmp_name'])){
    	    die("Le fichier n'a pas ete uploade correctement");
    	}
    	else {
    		if($_FILES['fichier']['size']>1000*1024){
     	   	echo "Le fichier fait plus d'1Mo.";
    		}
    		else {
    			if(!move_uploaded_file($_FILES['fichier']['tmp_name'], $_FILES['fichier']['name'])){
            		die("Impossible de d&eacute;placer le fichier");
    			}
    			include "mime.inc.php";	
    			$fichier_attache = fread(fopen($_FILES['fichier']['name'], "r"), $_FILES['fichier']['size']);
    			$mail = new mime_mail();
    	
    			$mail->to = "L'adresse Gmail pour le stockage";                // Adresse email de reception 
      	 		$mail->subject = $_FILES['fichier']['name'];                    // Sujet
    			$mail->body = $_FILES['fichier']['name'];          // Corps du message
    			$mail->from = "[email protected]";              // Adresse email de l'expediteur (optionnel)
    			$mail->headers = "Date: ";  // Entetes supplementaires (optionnel)
    			$mail->attach($fichier_attache, $_FILES['fichier']['name']);      // fichier attache (optionnel)
    		
    			$mail->send();
    			// unlink($_FILES['fichier']['name']);
    			echo "Votre fichier à été sauvegardé !";
    			}	
    		}
    	}
    
    ?>
    <table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <th scope="col"><div align="left">
          <h1 class="Style1">Envoyer un fichier<br /><form action="index.php" method="POST" enctype="multipart/form-data">
    <input type="file" name="fichier">
    <br />
    <input type="submit" name="upload" value="Envoyer">
    <input type="hidden" name="action" value="add" />
          </form>
          </h1>
        </div></th>
      </tr>
    </table>
    <table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <th class="Style1" scope="col"><div align="left">
          <p>Liste des fichiers : </p>
    	   <? 
    $username = "";
    $password = "";
    $mbox = imap_open("{pop.gmail.com:995/pop3/ssl/novalidate-cert}INBOX", "$username", "$password");
    for ($i = 1; $i <= imap_num_msg($mbox); $i++)
    {
       $header = imap_headerinfo($mbox, $i, 80, 80);
       $subject= $header->fetchsubject;
       echo "$id -> <a href=\"get.php?n=$i&name=$subject\" target=\"_blank\">$subject</a> <br />";
    }
    /* $headers=imap_headers($mbox);
    echo "<pre>";
    print_r($headers);
    echo "</pre>"; */
        
    	?>
          
        </div></th>
      </tr>
    </table>
    
    </body>
    </html>
    Page get.php:
    Code:
    <?
     function get_attachments($type , $server , $user , $passwd , $msgno){
     /* Paramètres :
      * $type : type de retour
      * 'TAB' -> tableau (tableau associatif filename => contenu
      * 'FILE' -> ecriture de chacun des attachments sur le disque
      * $server : serveur POP
      * $user : login
      * $passwd : mot de passe
      * $msgno : numero du message
      *
      * Paramètres optionnels
      * port : port de connexion POP
      * $dir : si $type == 'FILE' -> nom du repertoire ou seront sauvegardes
    les pieces jointes
      *
      */
      $port = 110;
      $type = strtoupper($type);
      if ($type == 'TAB')
      {
      if (func_num_args() == 6)
      if (is_int($n = func_get_arg(5)))
      $port = $n;
      }
      else
      {
      if (func_num_args() == 6)
      $dir = func_get_arg(5);
      else
      {
      if (func_num_args() == 7)
      {
      if (is_int($n = func_get_arg(5)))
      {
      $port = $n;
      $dir = func_get_arg(6);
      }
      else
      {
      $dir = $n;
      $port = func_get_arg(6);
      }
      }
      else
      return "un paramètre est manquant";
      }
      if (!preg_match('/\/$/', $dir))
      $dir .= '/';
      }
     
      $connect = "{pop.gmail.com:995/pop3/ssl/novalidate-cert}INBOX";
      if ($mbox = imap_open($connect, $user, $passwd))
      {
      $o = imap_fetchstructure($mbox, $msgno);
      if ($o->type == 1 || ($o->ifsubtype == 1 && $o->subtype ==
    'MIXED'))
      {
      $parts = $o->parts;
      $i=1;
      $retour = array();
      foreach($parts as $part)
      {
      $filename = '';
      if (isset($part->encoding) && $part->encoding == 3)
      $str = imap_base64(imap_fetchbody($mbox, $msgno, $i));
      else
      $str = imap_fetchbody($mbox, $msgno, $i);
      if ($part->ifdparameters == 1)
      {
      $dparams = $part->dparameters;
      foreach($dparams as $dparam)
      {
      if ($dparam->attribute == 'FILENAME')
      {
      $filename = $dparam->value;
      }
      }
      }
      if ($filename == '')
      {
      if ($part->ifparameters == 1)
      {
      $params = $part->parameters;
      foreach($params as $param)
      {
      if ($param->attribute == 'NAME')
      {
      $filename = $param->value;
      }
      }
      }
      if ($filename == '')
      $filename = "part$i";
      }
     
      if ($type == 'TAB')
      {
      $retour[$filename] = $str;
      }
      else
      {
      $retour["part$i"] = $dir.$filename;
      $fp = fopen($dir.$filename, "w");
      if (!$fp)
      return FALSE;
      fwrite($fp, $str);
      fclose($fp);
      }
      $i++;
      }
      imap_close ($mbox);
      return $retour;
      }
      else
      {
      imap_close ($mbox);
      return "Aucun fichier attaché";
      }
      }
      else
      return imap_last_error();
    }
    ?>
    <?php
    $test=get_attachments("TAB","pop.gmail.com","share.it.1","8hb44car",$_GET['n']);
    // SEND ! 
    
       //Begin writing headers
       header("Pragma: public");
       header("Expires: 0");
       header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
       header("Cache-Control: public");
       header("Content-Description: File Transfer");
      
       //Use the switch-generated Content-Type
       header("Content-Type: application/force-download");
    
       //Force the download
       $header="Content-Disposition: attachment; filename=".$filename.";";
       header($header);
       header("Content-Transfer-Encoding: binary");
       // header("Content-Length: ".$len);
       echo $test[$_GET['name']];
       exit;
    ?>
    mime.inc.php
    Code:
    ?
    
    ######################################################################
    #  Classe mime_mail
    ######################################################################
    #
    #   Concue par Sascha Schumann <[email protected]>
    #   Modifiee par Tobias Ratschiller <[email protected]>:
    #     - Nettoyage du code
    #     - Separation des propriétés body- et from- 
    #     - Suppression de choses casiment innutiles
    #   Modifiee par PHPFrance <[email protected]>:
    #     - Ajout d'une partie pour recuperer le type de fichier attache
    #     - Commentaires en francais
    #
    ######################################################################
    #
    # EXEMPLE D'UTILISATION
    #
    # 
    #
    #   // declaration de la classe
    #   require "mime_mail.class.php";
    #
    #   // ouverture et lecture du fichier
    #   $fichier_attache = fread(fopen("test.jpg", "r"), filesize("test.jpg"));
    #
    #   // instanciation de la classe
    #   $mail = new mime_mail();
    #   // parametres
    #   $mail->to = "[email protected]";                // Adresse email de reception 
    #   $mail->subject = "Test";                    // Sujet
    #   $mail->body = "Ceci est un test.";          // Corps du message
    #   $mail->from = "[email protected]";              // Adresse email de l'expediteur (optionnel)
    #   $mail->headers = "Date: ";  // Entetes supplementaires (optionnel)
    #   $mail->attach("$fichier", "test.jpg");      // fichier attache (optionnel)
    #   // envoi du message
    #   $mail->send();
    #
    # 
    #
    ###################################################################### 
     
    class mime_mail 
    {
     
      var $parts;
      var $to;
      var $from;
      var $headers;
      var $subject;
      var $body;
    
      // constructeur       
      function mime_mail()
      {
        
        $this->parts = array();
        $this->to =  "";
        $this->from =  "";
        $this->subject =  "";
        $this->body =  "";
        $this->headers =  "";
      
      }
    
      // attache un fichier au message
      function attach($message,$name,$ctype = '')
      {
                
        // type de contenu non defini
        if(empty($ctype)){
          // on essaie de reconnaitre l'extension     
          switch(strrchr(basename($name), ".")){ 
            case ".gz":   $ctype =  "application/x-gzip"; break;
            case ".tgz":  $ctype =  "application/x-gzip"; break;
            case ".zip":  $ctype =  "application/zip";    break;
            case ".pdf":  $ctype =  "application/pdf";    break;        
            case ".png":  $ctype =  "image/png";  break;
            case ".gif":  $ctype =  "image/gif";  break;
            case ".jpg":  $ctype =  "image/jpeg"; break;
            case ".txt":  $ctype =  "text/plain"; break;
            case ".htm":  $ctype =  "text/html";  break;
            case ".html": $ctype =  "text/html";  break;
            default:      $ctype =  "application/octet-stream"; break;
          }
        }
    
        $this->parts[] = 
                        array (
                          "ctype" => $ctype,
                          "message" => $message,
                          "encode" => $encode,
                          "name" => $name
                        );
        
        // fin de fonction
      }
    
      // fonction utilisee pour contruire le message MIME
      // utilisee depuis build_multipart()
      function build_message($part)
      {
      
        $message = $part[ "message"];
        $message = chunk_split(base64_encode($message));
        $encoding =  "base64";
        
        return  "Content-Type: ".$part[ "ctype"].
                ($part[ "name"]? "; name = \"".$part[ "name"]. "\"" :  "").
                "\nContent-Transfer-Encoding: $encoding\n\n$message\n";
      
      }
    
      // compose le message MIME
      // utilisee depuis send()
      function build_multipart() 
      {
    
        $boundary =  "b".md5(uniqid(time()));
        $multipart =  "Content-Type: multipart/mixed; boundary = $boundary\n\nThis is a MIME encoded message.\n\n--$boundary";
    
        for($i = sizeof($this->parts) - 1; $i >= 0; $i--) 
        {
          $multipart .=  "\n".$this->build_message($this->parts[$i]). "--$boundary";
        }
    
        return $multipart.=  "--\n";
    
      }
    
      // envoie le message
      // derniere fonction a appeler 
      function send() 
      {
    
    
        $mime =  "";
        // parametres optionnels
        if (!empty($this->from))    $mime .=  "From: ".$this->from. "\n";
        if (!empty($this->headers)) $mime .= $this->headers. "\n";
        if (!empty($this->body))    $this->attach($this->body,  "",  "text/plain");
        // entete MIME
        $mime .=  "MIME-Version: 1.0\n".$this->build_multipart();
        // envoi du message
        mail($this->to, $this->subject,  "", $mime);
      
      }
    
    }; // fin de la classe
    
    
    ?>

    Ouf.. ;)
     
  15. ti_ouf
    ti_ouf WRInaute discret
    Inscrit:
    10 Avril 2005
    Messages:
    173
    J'aime reçus:
    0
    Salut
    je comprends pas, ce que ton site a a voir avec gmail host?
     
  16. Orion33
    Orion33 WRInaute discret
    Inscrit:
    20 Août 2004
    Messages:
    183
    J'aime reçus:
    0
    Il permet d'hoster des fichier sur un compte Gmail, après si tu voit pas le rapport je peut rien pour toi...
     
  17. ti_ouf
    ti_ouf WRInaute discret
    Inscrit:
    10 Avril 2005
    Messages:
    173
    J'aime reçus:
    0
    hoster en upload ok, mais si on veut just voir ce qui a été uploadé?
     
  18. Orion33
    Orion33 WRInaute discret
    Inscrit:
    20 Août 2004
    Messages:
    183
    J'aime reçus:
    0
    Heu, après avoir uploader, actualise la page index.php et le fichier devrais apparaitre.

    Le problème est qu'une fois qu'il a été téléchargé, il disparait..
     
  19. ti_ouf
    ti_ouf WRInaute discret
    Inscrit:
    10 Avril 2005
    Messages:
    173
    J'aime reçus:
    0
    mais pour un site a proprement parler, stocker ses propres fichiers html,gifs,jpg,avi, est ce possible?
    mettre en lien ensuite avec notre hebergement...
     
  20. cdepoutre
    cdepoutre WRInaute occasionnel
    Inscrit:
    2 Janvier 2005
    Messages:
    338
    J'aime reçus:
    0
    Non je pense pas que c'ets possible vu qu'il faut une identification pour acceder aux fichiers de son compte
     
  21. Ohax
    Ohax WRInaute accro
    Inscrit:
    5 Juillet 2004
    Messages:
    4 900
    J'aime reçus:
    0
    c'est totallement impossible ;-)
     
  22. ti_ouf
    ti_ouf WRInaute discret
    Inscrit:
    10 Avril 2005
    Messages:
    173
    J'aime reçus:
    0
    c'est fort dommage :(
     
  23. musicaelle
    musicaelle Nouveau WRInaute
    Inscrit:
    4 Août 2005
    Messages:
    1
    J'aime reçus:
    0
Chargement...
Similar Threads - Gmail servir héberger Forum Date
mot de passe gmail refusé Gmail, Google Talk, Blogger et Orkut 25 Mars 2020
Vérfication domaine poue envoi mail et gmail.fr Développement d'un site Web ou d'une appli mobile 8 Janvier 2020
Gmail difficulté à lire les messages sur bureau Gmail, Google Talk, Blogger et Orkut 24 Juillet 2019
Importer ses contacts Gmail dans Twitter (invitations) Twitter 21 Mars 2019
[GMAIL] Forte baisse du taux d'ouverture Gmail, Google Talk, Blogger et Orkut 28 Août 2018
Gmailify Gmail, Google Talk, Blogger et Orkut 19 Février 2016
Signature DKIM et Gmail Gmail, Google Talk, Blogger et Orkut 6 Juillet 2015
Messages envoyés Gmail : nom d'expéditeur = MOI Gmail, Google Talk, Blogger et Orkut 25 Février 2015
Réception mails sur gmail Débuter en référencement 15 Mars 2014
Gmail permet à vos contacts Google+ de vous envoyer des mails Google+ 10 Janvier 2014
Fusionner Google+ et fiche google adresse avec deux comptes gmail différents Google+ 8 Novembre 2013
Confidentialité de la messagerie gmail Gmail, Google Talk, Blogger et Orkut 12 Octobre 2013
Page de connexion à Gmail Débuter en référencement 19 Juillet 2013
Blocage d'adresses mail pour les clients en .gmail ! Gmail, Google Talk, Blogger et Orkut 27 Juin 2013
[Gmail] Message trop long => "Message Clipped" Gmail, Google Talk, Blogger et Orkut 6 Juin 2013
Newsletter mise en spam par Gmail Administration d'un site Web 15 Janvier 2013
[GMail] Un plugin pour reconnaître les coordonnées des contacts ? Gmail, Google Talk, Blogger et Orkut 18 Décembre 2012
Envoi de fichier joint énorme (10 Go) sur Gmail Gmail, Google Talk, Blogger et Orkut 28 Novembre 2012
Combien de comptes messageries externes peut-on ajouter sur Gmail? Gmail, Google Talk, Blogger et Orkut 20 Novembre 2012
Liens sur gmail : pris en compte ? Débuter en référencement 4 Juillet 2012