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

Apache Discussion :

Acceder a un partage reseaux depuis un script php


Sujet :

Apache

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 75
    Points : 54
    Points
    54
    Par défaut Acceder a un partage reseaux depuis un script php
    Salut tous le monde , voila j ai un soucis pour acceder a un partage windows , j utilise un script php qui doit copié un fichier sur un partage mais ca ne marche pas quand php fait une copy , ou lance un fichier bat ou ect .. alors que si je fais une commade dans l invite de commande ca passe ...

    EN GROS

    si je lance un fichier bat depuis l invite de commande ca marche si je lance depuis php le .bat ca ne marche pas ca me mais acces reffusé

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 75
    Points : 54
    Points
    54
    Par défaut
    çà fait assez longtemps que je traîne avec ce problème , je ne sais plus quoi faire ... j ai essayé pas mal de chose ... et l administrateur qui gère le réseaux est une bûche donc dur dur ... ( récapitulation bref du réseaux , il y a un serveur , et mon poste .. l adresse du serveur est 131.111.2.150 et elle partage un répertoire ... que j ai mis en lecteur réseaux ... pour des raisons de sécurité un ftp n est pas envisageable

    J essaye de copié un fichier ( plusieurs en faite mais un par un ) qui se situe sur une autre machine que le serveur web ( sur un partage .. mais cela ne marche pas... le problème est que j ai accès refusé ... aide moiiiiiiiiii .. c est donc sûrement un problème de droit ?c est pour ça que dans les premiers temps j avais crée un lecteur réseaux ... ensuite j ai essayé de lancé un petit script en PERL depuis php ( exec ) et ensuite voyant tjs un problème d accès refusé j ai tenté un script en batch ( .bat ) vu que sous ms dos la fonction copy marche quand je tape les ligne de commandes une a une que je génère avec un echo ... pour bien vérifié que mon script ne déconne pas ... et la sous l invite de commande de xp ça fonctionne bien ..

    méthode essayé ..
    • fonction copy de php
    • fonction system & exec pour ensuite utilisé copy ..
    • crée un lecteur réseaux
    • crée une variable d environnement
    • lancé un script externe en perl & batch depuis la fonction system & exec en introduisant des arguments
    • plus d idées ah si venir ici ..

    j utilise ce code
    <?php
    // bout de code non utilisé ..
    /*
    $a= "z:\\test\aUT01.phy" ;
    $b = "z:\\test\save\" ;
    system ("copy ".$a." ".$b." >>tmp.txt")
    */

    $newfile = 'c:\\test\\aUT01.phy';
    $a = getenv("SRV")."aUT01.phy"; //getenv () récupère une variable d environnement windows ( ex : %systemroot% )
    $b = 'z:\\aUT01.phy' ;
    $c = ' \\\\131.111.2.179\\Logiciels\\aUT01.phy';
    echo
    '<fieldset><legend>Affichage des variables</legend>';
    echo
    $b ;
    echo
    '<br>' ;
    echo
    $a ;
    echo
    '<br>' ;
    echo
    $c;
    echo
    '</fieldset>' ;

    echo
    '<fieldset><legend>Affichage A</legend>';

    if (!
    copy($a, $newfile))
    {
    echo
    "La copie du fichier $file n'a pas réussi...\n";
    }

    echo
    '</fieldset>' ;
    echo
    '<fieldset><legend>Affichage B</legend>';

    if (!
    copy($b, $newfile))
    {
    echo
    "La copie du fichier $file n'a pas réussi...\n";
    }

    echo
    '</fieldset>' ;
    echo
    '<fieldset><legend>Affichage C</legend>';

    if (!
    copy($c, $newfile))
    {
    echo
    "La copie du fichier $file n'a pas réussi...\n";
    }

    echo
    '</fieldset>' ;

    ?>
    ce qui me donne comme message d erreur ( voir image)
    J ai essayé sur une machine qui est sur Xp ( l ip ou il y a 179 )
    mais ca ne marche tjs pas

  3. #3
    Membre habitué Avatar de mimiz
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Points : 154
    Points
    154
    Par défaut
    !Salut,

    Effectivement tu as un probleme de droits
    Je pense que l'utilisateur qui execute ton script ( apache ou php)
    tu peux afficher l'utilisateur à l'aide de ceci (vu sur la doc PHP)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    // Affiche le nom d'utilisateur qui fait tourner le processus php/http
    // (sur un système ayant "whoami" dans le chemin d'exécutables)
    echo exec('whoami');
    ?>
    Et comme ca tu verras qui execute ton script batch...
    mimiz

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 75
    Points : 54
    Points
    54
    Par défaut
    Premierement Merci d avoir repondu .. ca me mais deja sur la voie ..je peux maintenant affirmé que le probleme vien de apache ..


    ai installé WindowsXP-KB838079-SupportTools-ENU.exe qui comprend whoami.exe .. j obtien
    AUTORITE NT\SYSTEM

    Comment reglé les droits ?

  5. #5
    Membre habitué Avatar de mimiz
    Inscrit en
    Décembre 2005
    Messages
    128
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 128
    Points : 154
    Points
    154
    Par défaut
    Ben en fait ca va pas etre si facile que ça, en effet l'utilisateur AUTORITE NT\SYSTEM est le compte de system local Windows, peut etre pourrais tu créer un repertoire virtuel dans Apache qui pointe sur ton lecteur réseau et essayer de déplacer ton fichier avec les fonctions PHP, mais je ne garantie pas du bon fonctionnement ...
    Perso je n'ai jamais utilisé apache sous windows donc je vais pas pouvoir t'en dire beacoup plus
    Bon courage !
    mimiz

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 75
    Points : 54
    Points
    54
    Par défaut
    Impossible de faire de crée un alias sous easyphp qui pointe vers un lecteur reseaux

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 75
    Points : 54
    Points
    54
    Par défaut
    Je sais pu quoi faire :

Discussions similaires

  1. [Active Directory] Création de comptes utilisateurs depuis un script (PHP)
    Par Hervé Saladin dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 24/07/2007, 11h26
  2. Réponses: 4
    Dernier message: 05/04/2007, 03h10
  3. [Système] Executer un programme externe depuis un scripte php
    Par Scorpion Rouge dans le forum Langage
    Réponses: 1
    Dernier message: 24/01/2006, 11h59
  4. [PHP-JS]Ouvrir un pop-up depuis un script PHP ?
    Par boteha dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 07/01/2005, 12h28
  5. Lancement d'un programme java depuis un script php
    Par gexti dans le forum Développement Web en Java
    Réponses: 8
    Dernier message: 07/05/2004, 17h40

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