IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Création d'un forum local


Sujet :

Linux

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 4
    Par défaut Création d'un forum local
    Bonjour,

    Je vous contacte pour savoir si quelqu'un pourrait m'aidé sur un projet concernant un gestionnaire de forum local à une machine que je dois lancé une seule fois à l'initinalisation du système en arrière plan par la commande servforum : de plus chaque utilisateeur a la possibilité de demander la création d'un forum sur un nouveau théme, son abonnement à un forum, de poster un message dans un forum de consulter les messages non lus d'un forum auquel il est abonné et de le désabonner.
    De plus le serveur doit détruire tous les messages trop anciens. On demande également de conserver une trace de toutes les opérations effectuées par le serveur.

    J'opterai plus tôt pour une communication par socket entre client et serveur mais dans ce cas là faudrait que j'utilise le protocole udp ou tcp ?

    Comment donc peut -on développé cette application ? doit je-utilisé les les tubes , MSQ bref comment dois-je procéder car sur ce projet je me sent perdu ?

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 271
    Par défaut
    Je ne comprends pas bien la demande :
    - quel langage ?
    - quel type d'application ?
    - quels sont les problèmes rencontrés exactement ?

  3. #3
    Membre averti
    Étudiant
    Inscrit en
    Février 2008
    Messages
    23
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 23
    Par défaut CMS phpBB
    moi aussi j'ai pas bien comprit ta demande, mais je vous conseil d'utiliser les

    CMS. moi pour la gestion de mes Forum j'utilise le CMS phpBB qui est écrit en

    PHP et qui utilisent une base de donné MySQL sous le serveur Web Apache.

    vas voir cette page: http://php.developpez.com/scripts/ su trouvera ce que

    vous cherché.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 4
    Par défaut Reponse
    Quel type de langage ?

    Je dois créer un démon local (serveur) de forum ( sous linux ) pouvant répondre aux requettes ( creation de forum, abonnement, lecture de message ) d'un utilisateur local ( client)
    A mon avis, le langage le plus clair à utilisé dans ce type de programme est les sockets en langage C.
    Mais je voudrai savoir quels sont les types de méthodes que je pourrais utilisé pour créer ce forum .

    Ce serait plutôt en ligne de programmation systeme linux que en PHPBB.
    Donc je voudrai savoir comment m'y prendre et est ce qu'une personne ici à déja créer ce type de forum sous une mandriva linux.

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 271
    Par défaut
    Tu peux faire un demon en C, perl, python, ...etc
    Idem pour la programmation des sockets .

    Le demon écoute sur un port et exécute les commandes envoyées par un client :

    client --> commande --> demon --> execution de la commande
    <------------------retour de la commande -----------'


    Par client, j'entends programme qui se connecte à la socket du demon et envoie/recoit des données.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 4
    Par défaut Reponse
    Merci pour tous ses renseignements.
    Je voudrai savoir si tu ne connais pas de liens web pour creer un demon sous linux en c

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 4
    Par défaut Reponse
    Après avoir réfléchi, j'ai créer le démon suivant

    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    #include <string.h>
    #include <errno.h>
    #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>
    #include <time.h>
    #include <signal.h>
     
      void daemonize(); // Creation du deamon
     
         int main(int argc,char *argv[])
         {
         /**demarrage du deamon
         */
         daemonize();
     
         /**
         ps -aux pour verifier le pid
         */
     
    	while(1) // boule infini
        {
         /**ceci est une GRAVE ERREUR
         un deamon ne doit jamais intergir avec
         l'utilsateur . il est ecrit pour executer des
         tacher cache (hidden task) ex: service reseau ftp,web.
         Mettez ca dans la tete ceci est un exemple
         */
         puts("tic..c le demon");
         /*pur que le puts marche vous devez commenter
         ou supprimer la fonction
         close(STDOUT_FILENO);
         */
         sleep(30);
         }
         return EXIT_SUCCESS
         }
         void deamonize(void)
         {
         pid_t pid,sid;
         pid=fork();
         switch(pid) {
     
         case 0:
         //on sort de la boucle
         break;
     
         case -1: //erreur
         exit(EXIT_FAILURE);
         break;
     
         default :
         //process parent
         exit(EXIT_SUCCESS);
         }
         /** on travaille maintenant
         dans le processus child
         */
         umask(0);
     
         sid=setsid();
     
        if(sid<0) {
        perror("sid");
         exit(EXIT_FAILURE);
         }
     
         if(chdir("/")<0){
         perror("chdir");
         exit(EXIT_FAILURE);
         }
         printf("Demon demarer pid=%d\n",(int)getpid());
     
         close(STDIN_FILENO); //fermer le SHELL
         close(STDOUT_FILENO);
         close(STDERR_FILENO);
     
         }
     
         case 0:
         //on sort de la boucle
         break;
     
         case -1: //erreur
         exit(EXIT_FAILURE);
         break;
     
         default :
         //process parent
         exit(EXIT_SUCCESS);
         }
         /** on travaille maintenant
         dans le processus child
         */
         umask(0);
     
         sid=setsid();
     
         if(sid<0) {
         perror("sid");
         exit(EXIT_FAILURE);
         }
     
         if(chdir("/")<0){
         perror("chdir");
         exit(EXIT_FAILURE);
         }
         printf("Demon demarer pid=%d\n",(int)getpid());
     
         close(STDIN_FILENO); //fermer le SHELL
         close(STDOUT_FILENO);
         close(STDERR_FILENO);
     
         }

    Mais, ce que je ne comprend pas,

    c'est comment se connecter à la socket du demon et comment envoyé et recevoir des données ?

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 271
    Par défaut
    Déjà il faudrait créer une socket en mode écoute côté serveur (daemon) .

  9. #9
    Membre émérite Avatar de valefor
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 711
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    puts("tic..c le demon");
         /*pur que le puts marche vous devez commenter
         ou supprimer la fonction
         close(STDOUT_FILENO);
         */
    Ou rajouter "\n" à la fin de la ligne ?

Discussions similaires

  1. [MySQL] Création d'un forum, besoin de votre avis
    Par swf_err2str dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 14/04/2006, 11h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo