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 :

exécution commande dos et droits utilisateurs


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2014
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2014
    Messages : 253
    Points : 164
    Points
    164
    Par défaut exécution commande dos et droits utilisateurs
    Bonjour,
    Dans un script, j'utilise la fonction exec() pour lancer l'exécution du programme comme par exemple htpasswd.exe (de apache) pour diverses manipulations.
    J'ai constaté après de nombreux essais qu'en mode CLI, les fonctions exec(), passthru()... fonctionnent tout le temps à partir du moment ou la console dos est ouverte en mode administrateur, mais j'ai souvent un blocage (le script ne se termine pas ou alors une erreur type paramètre d'entrée est retournée) lorsque ces même fonctions sont utilisées avec une exécution de php en tant que module de Apache.
    LA question est la suivante : sans modifier les propriétés d'exécution des services apache, est il possible d'utiliser exec() ou autre avec le mode administrateur ?
    Sinon voyez vous d'autres explications à ces différences de fonctionnement ?

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2014
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2014
    Messages : 253
    Points : 164
    Points
    164
    Par défaut
    Bonjour,
    Je donne un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    exec("htpasswd -bm \"fichier\" \"".$user."\" \"".$pass."\"");
    ne fonctionne que si j'appelle le script php en mode CLI administrateur mais pas depuis une page web php, puisque le script se bloque.
    J'ai remarqué ceci pour d'autres programmes utilisés en ligne de commande...
    Je pense qu'il y a un problème au niveau des droits, insuffisants pour pouvoir exécuter le programme directement, il faut être en mode administrateur je pense, mais là je ne sais pas comment faire...

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Déjà, je dirais qu'il y a sans doute une différence de fonctionnement selon l'OS de ton serveur. Tu pourrais peut-être utiliser une commande sudo (sous Linux/UNix) ou runas (sous Windows)

  4. #4
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2014
    Messages
    253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2014
    Messages : 253
    Points : 164
    Points
    164
    Par défaut
    Bonjour,
    Merci pour la suggestion. C'est certainement une bonne façon d'obtenir un résultat. J'avais essayé quelques lignes de commandes avec runas (car j'utilise windows) mais finalement cela paraissait assez compliqué et je ne suis pas vraiment arrivé à obtenir un résultat identique ou cela ne marchait pas... Après quelques recherches j'ai appris que windows 10 à un compte administrateur par défaut qui n'est pas activé et sans mot de passe en général, donc je ne sais pas comment utiliser ce profil dans ces conditions, de plus si celui ci n'est pas activé par défaut je crois que c'est mieux comme cela... donc c'est loin d'être évident...

Discussions similaires

  1. conversion exécution commande DOS depuis MS SQL Server vers MySQL
    Par Valarauko dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 20/05/2012, 16h06
  2. exécuter command dos via python
    Par goenitz dans le forum Général Python
    Réponses: 3
    Dernier message: 02/10/2010, 18h09
  3. Problème exécution commande DOS
    Par Micke7 dans le forum Général Java
    Réponses: 9
    Dernier message: 25/06/2010, 17h59
  4. Commande Net Share - droits utilisateurs
    Par SurfingJeff dans le forum Windows XP
    Réponses: 1
    Dernier message: 03/10/2008, 17h11
  5. Exécuter commande DOS
    Par seacat dans le forum VBA Access
    Réponses: 3
    Dernier message: 25/10/2007, 23h48

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