J'ai un shell shellscript avec une connexion à une autre machine avec ssh et une clé de sorte qu'il n'a pas besoin du nom d'utilisateur et mot de passe. Lorsque j'exécute ce script à partir de la ligne de commande, cela fonctionne très bien ... mais quand je lance ce script depuis php shell_exec, cela ne fonctionne pas.PHP shell_exec exécutant un shellscript avec ssh
Si je crée une connexion ssh avec PHP et exécute le script en tant que mon propre utilisateur, cela fonctionne.
Maintenant pour ma question: D Existe-t-il un moyen de simplement exécuter le script dans shell_exec
de php sans faire une connexion sur ssh en tant qu'utilisateur différent?
C'est une description assez pauvre de votre scénario. Quoi qu'il en soit, êtes-vous sûr que la ligne de commande et le PHP utilisent le même utilisateur, c'est-à-dire que vous exécutez PHP depuis la ligne de commande et non depuis un serveur web? – AndreKR
Cela ressemble plus à une question sysadmin. Si l'utilisateur PHP s'exécute sous a le droit d'exécuter le programme en question, c'est possible. Sinon, ce n'est pas possible. –
Php fonctionne comme www-data et quand je me connecte à ssh sous php je me connecte sous mon propre compte utilisateur donc définitivement pas le même utilisateur. Là où ça va mal est dans le shellscript ... ssh -n $ KEYFILE $ USER @ $ HOST "bash ./jpg2xml.sh/tmp/$ tmpfile | ./ocr" qui est exécuté à partir du shellscript par php. Il exécute le script, seulement cette partie qui ne fonctionne pas! – Chris