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

Langage PHP Discussion :

Archivage de fichiers sur serveur distant


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Archivage de fichiers sur serveur distant
    Bonjour,

    j'ai 26 ans je suis DEV Web.
    Mon chef m'a demandé de bosser sur un nouveau projet qui consite à mettre en place une Interface Web permettant les actions suivantes:

    1)- L'utilisateur selectionne un serveur windows distant dans une liste déroulante
    2)- Apres selection du serveur windows, l'interface affiche l'arborescence des dossiers de ce serveur distant.(permettant à l'utilisateur de selectionner un dossier)
    3)- L'interface propose un bouton qui permet de copier tous les fichiers du dossier selectionné sur un AUTRE SERVEUR WINDOWS (d'archivage)


    La problématique: le serveur WEB est sur un environnement LAMP (linux) et les serveurs de données sont sur WINDOWS
    Pour le point numéro (1) c'est facile
    Pour le point numéro (2) je pensais utiliser la fonction opendir() pour lister les dossier mais j'ai une erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    opendir("\\\\192.165.21.230\\" );
    erreur: failed to open dir: Aucun fichier ou dossier de ce type
    Pour le point numéro (3) je pensais au transfère de fichiers FTPS mais c'est moche de devoir faire tourner un serveur FTP sur tous les serveurs windows
    (d'ailleurs avec la méthode FTP je suis obligé de récupérer les fichiers sur le serveur WEB avant de les renvoyer sur le serveur d'archivage windows)


    Des idées? :-) toutes vos réponses me seront très précieuses, merci d'avance

  2. #2
    Membre éprouvé Avatar de patrickbaras
    Homme Profil pro
    Informaticien (à sa mémère).
    Inscrit en
    Septembre 2010
    Messages
    525
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien (à sa mémère).
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 525
    Points : 1 103
    Points
    1 103
    Par défaut
    tu devrais "mapper" sur ton server linux les repertoires windows distant
    puis tu fait un simple copy
    http://www.howtogeek.com/168115/moun...ux-with-samba/
    ce message vous a aidé ! Un petit click sur fait toujours plaisir

    "Nos études ont montré que la probabilité qu’un programme corrigé fonctionne comme avant la correction est seulement de cinquante pour cent." Bev Littlewood & Lorenzo Strigini

    "Le logiciel, c’est comme le sexe, c’est meilleur quand c’est libre/gratuit." Linus Torvalds

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta réponse Patrick Baras.

    Il y'a du changement dans la demande de mon chef et je bloque sur un nouveau point. J’espère que vous pourrez m'aider.
    Le serveur web ne tourne plus sous UNIX mais sous windows server 2008 (server IIS avec une installe de PHP).

    Dans la société, chaque collaborateur dispose de plusieurs partages réseaux sur son poste. Mon chef voudrait que l'application propose aux collaborateurs de parcourir l'arborescence de ses partages réseaux
    afin qu'ils puissent sélectionner un dossier à archiver (sur un serveur d'archivage)

    Bref, la problématique, c'est de lister l'arborescence relative aux droits de chaque collaborateur qui aura accès à l'application... Tous les partages réseaux sont disponibles à partir sur le serveur web.
    Donc l'application peut proposer l'arborescence réseau.. oui MAIS, avec les droits du serveur web, et pas ceux de l'utilisateur qui utilise l'application.

    exemple:
    -> Si Robert doit avoir accès au dossier "Fruits" et pas au dossier "Legumes"
    -> Si Jean doit avoir accès au dossier "Legume" et pas au dossier "Fruits"
    = ces deux personnes auront accès aux deux dossiers "Fruits" et "Legumes" car le serveur web a les droits d'accès tous les dossiers.


    J'ai eu une idée (un peut pourrav certe) et que je n'ai d'ailleurs par encore testée :

    -> L'utilisateur est loggé sur l'application avec son compte windows, donc le script PHP peut executer une commande system du genre:
    net use G: \\192.168.0.12\ userPassword \user:userAccount persistant:no
    Ensuite, on fait un "opendir" du lecteur "G" et on obtient l'arborescence relative aux droits du compte windows de l'utilisateur.

    le problème:
    Si un AUTRE collaborateur utilise l'application au même moment, le lecteur G est déjà monté sur le serveur web donc... il faut utiliser la lettre suivante... et ainsi de suite pour chaque collaborateur..
    Evidemment si on fait ça, lorsque le collaborateur a terminé son archivage il faut démonter le lecteur réseau
    net use G: \delete
    Bref, solution de merde dont je suis pas fière du tout (et qui fonctionne peut etre pas d'ailleurs lol), mais mes connaissances en System windows sont plutot limitées. Alors si vous avez des idées, si vous connaissez des openSource PHP qui peuvent faire ce boulot, je suis tout à votre écoute.

    Merci

    Vince

  4. #4
    Membre éprouvé Avatar de patrickbaras
    Homme Profil pro
    Informaticien (à sa mémère).
    Inscrit en
    Septembre 2010
    Messages
    525
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Informaticien (à sa mémère).
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 525
    Points : 1 103
    Points
    1 103
    Par défaut
    Il y a longtemps que j'ai géré un IIS mais tu a la possibilité de limiter l'accès a des répertoires/fichiers du serveur au utilisateur authentifiés

    tu peux ensuite l'utiliser en php
    http://www.php.net/manual/fr/features.http-auth.php

    tu peux aussi récupérer les droits Windows des repertoires/fichiers avec stat()
    http://be2.php.net/manual/fr/function.stat.php
    ce message vous a aidé ! Un petit click sur fait toujours plaisir

    "Nos études ont montré que la probabilité qu’un programme corrigé fonctionne comme avant la correction est seulement de cinquante pour cent." Bev Littlewood & Lorenzo Strigini

    "Le logiciel, c’est comme le sexe, c’est meilleur quand c’est libre/gratuit." Linus Torvalds

Discussions similaires

  1. Creation fichier sur serveur distant
    Par bouliz dans le forum ASP.NET
    Réponses: 1
    Dernier message: 20/06/2007, 09h26
  2. Réponses: 2
    Dernier message: 18/04/2007, 15h44
  3. Réponses: 3
    Dernier message: 01/03/2007, 10h18
  4. [FTP] Accès fichiers sur serveur distant
    Par Mystic eyes dans le forum Langage
    Réponses: 23
    Dernier message: 07/07/2006, 17h06
  5. existence d'un fichier sur serveur distant
    Par Fabouney dans le forum Programmation et administration système
    Réponses: 3
    Dernier message: 17/01/2006, 10h18

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