2010-09-13 7 views

Répondre

0
  • variable d'environnement $USER
  • commande whoami
+0

non .... la réponse est apache dans tous cas .... puisque le code php est exécuté en tant qu'utilisateur apache –

+1

S'il vous plaît montrer à quoi ressemblent vos entrées cron. Si vous utilisez 'php -f', cela ne devrait pas être le cas. –

+0

non j'utilise la fonction CURL ... dans le cron. mon script cron est comme */10 * * * * cron "example.com/index.php" –

1

Cela renvoie l'utilisateur en cours :

$user = exec('whoami'); 

http://php.net/manual/function.exec.php

+0

non .... la réponse est apache dans tous les cas .... puisque le code php est exécuté comme utilisateur apache ... –

1

Deux options:

  • Laisser le cronscript appeler directement le script, par ex. php -f script.php
  • Laisser le cronscript spécifier l'utilisateur d'utilisation en tant que paramètre, par ex. wget http://host/script.php?user=$USER
0

Vous devez passer des informations d'utilisateur de votre client (cronjob dans ce cas). Sur le serveur, le processus php est toujours exécuté par webserver (apache dans votre cas). Alors configurez le cron pour passer quelque chose comme: example.com/index.php?user=$USER et obtenez ceci sur la fin du serveur comme $ _GET ['user']