Exemple : Un programme php s'exécute sur la machine 'ns' et je voudrais connaître la mémoire libre sur la machine 'news'.
Je pense que directement, ça ne doit pas être possible. potentiellement trop dangereux.. Mais une solution relativement simple pourrait être d'interroger un script qui tournerait sur la machine "news". je dis relativement simple, car il faudrait du coup que la machine news ait un serveur web d'installé dessus.
Lascap
Exemple :
Un programme php s'exécute sur la machine 'ns' et je
voudrais connaître la mémoire libre sur la machine
'news'.
Je pense que directement, ça ne doit pas être possible. potentiellement
trop dangereux.. Mais une solution relativement simple pourrait être
d'interroger un script qui tournerait sur la machine "news". je dis
relativement simple, car il faudrait du coup que la machine news ait un
serveur web d'installé dessus.
Exemple : Un programme php s'exécute sur la machine 'ns' et je voudrais connaître la mémoire libre sur la machine 'news'.
Je pense que directement, ça ne doit pas être possible. potentiellement trop dangereux.. Mais une solution relativement simple pourrait être d'interroger un script qui tournerait sur la machine "news". je dis relativement simple, car il faudrait du coup que la machine news ait un serveur web d'installé dessus.
Lascap
bruno
re bonjour je me suis trompé , voir fa fonction exec() mais cette fonction est interdite sur certain serveur .
Exemple : Un programme php s'exécute sur la machine 'ns' et je voudrais connaître la mémoire libre sur la machine 'news'.
je me permets d'être limite HS, pourquoi ne pas faire une redirection depuis le server web (ns) ?
Genre Apache (je maîtrise pas ce concept, mais je l'ai vu) redirect /scriptdistant/* http://news/$1 [optionQuiMasquecetteredirection]
-- Les fautes d'orthographes sont ma signature :-) pour me répondre en BAL (mode antispam) http://batman.dyndns.org/V2/Mail/?src=news.free
Tony Moutaux
Bonjour.
Je vais surement etre aussi un peu HS (pour l'un de mes premiers posts ca le fait pas trop :-/). Mais le probleme est plus d'ordre "systeme" que Php.
J'enetends par la que si tu veux lancer la commande cmd1 sur une machine distante, ce n'est pas Php qui va te le faire, en tous cas pas de facon propre (securise va-t-on dire). Il faut "juste" que tu arrives a executer la commande a distance depuis le serveur ou tu as Php et apres tu encapsules le lancement de facon a ce que la commande paraisse locale.
Par exemple, si les 2 machines (le serveur avec Php et celle ou tu tournes cmd1) sont dans un reseau qui permet le rexec ou le rsh, tu fais un petit script sur le serveur php pour lancer la commande a distance et c'est ce script que tu encapsules. Une construction comme ca te permettra de "securiser" l'execution de cmd1 et de pouvoir ecrire ton code Php independamment de l'execution de cette commande. La securite c'est parce que tu utilises des mecanismes comme rexec/rsh (ou meme ssh et autres). L'independance c'est parce que ton script Php n'a pas beosin de savoir ce que retourne la commande cmd1 et que tu peux changer de facon de faire, de systeme sur la machine distante, etc sans que ca gene ton PhP : tu auras juste a modifier le script de lancement de cmd1.
Bref : un bete exec en Php, un rsh sur du serveur Php vers la machine distante avec la commande ou le script qui va bien de l'autre cote. Et le plus dur c'est de permettre l'execution de rsh entre les 2 machines (a coups d'autorisation qu'il faut bien comprendre pour que ca reste securise).
Tony
Bonjour.
Je vais surement etre aussi un peu HS (pour l'un de mes premiers posts
ca le fait pas trop :-/). Mais le probleme est plus d'ordre "systeme"
que Php.
J'enetends par la que si tu veux lancer la commande cmd1 sur une machine
distante, ce n'est pas Php qui va te le faire, en tous cas pas de facon
propre (securise va-t-on dire). Il faut "juste" que tu arrives a
executer la commande a distance depuis le serveur ou tu as Php et apres
tu encapsules le lancement de facon a ce que la commande paraisse locale.
Par exemple, si les 2 machines (le serveur avec Php et celle ou tu
tournes cmd1) sont dans un reseau qui permet le rexec ou le rsh, tu fais
un petit script sur le serveur php pour lancer la commande a distance et
c'est ce script que tu encapsules. Une construction comme ca te
permettra de "securiser" l'execution de cmd1 et de pouvoir ecrire ton
code Php independamment de l'execution de cette commande. La securite
c'est parce que tu utilises des mecanismes comme rexec/rsh (ou meme ssh
et autres). L'independance c'est parce que ton script Php n'a pas beosin
de savoir ce que retourne la commande cmd1 et que tu peux changer de
facon de faire, de systeme sur la machine distante, etc sans que ca gene
ton PhP : tu auras juste a modifier le script de lancement de cmd1.
Bref : un bete exec en Php, un rsh sur du serveur Php vers la machine
distante avec la commande ou le script qui va bien de l'autre cote. Et
le plus dur c'est de permettre l'execution de rsh entre les 2 machines
(a coups d'autorisation qu'il faut bien comprendre pour que ca reste
securise).
Je vais surement etre aussi un peu HS (pour l'un de mes premiers posts ca le fait pas trop :-/). Mais le probleme est plus d'ordre "systeme" que Php.
J'enetends par la que si tu veux lancer la commande cmd1 sur une machine distante, ce n'est pas Php qui va te le faire, en tous cas pas de facon propre (securise va-t-on dire). Il faut "juste" que tu arrives a executer la commande a distance depuis le serveur ou tu as Php et apres tu encapsules le lancement de facon a ce que la commande paraisse locale.
Par exemple, si les 2 machines (le serveur avec Php et celle ou tu tournes cmd1) sont dans un reseau qui permet le rexec ou le rsh, tu fais un petit script sur le serveur php pour lancer la commande a distance et c'est ce script que tu encapsules. Une construction comme ca te permettra de "securiser" l'execution de cmd1 et de pouvoir ecrire ton code Php independamment de l'execution de cette commande. La securite c'est parce que tu utilises des mecanismes comme rexec/rsh (ou meme ssh et autres). L'independance c'est parce que ton script Php n'a pas beosin de savoir ce que retourne la commande cmd1 et que tu peux changer de facon de faire, de systeme sur la machine distante, etc sans que ca gene ton PhP : tu auras juste a modifier le script de lancement de cmd1.
Bref : un bete exec en Php, un rsh sur du serveur Php vers la machine distante avec la commande ou le script qui va bien de l'autre cote. Et le plus dur c'est de permettre l'execution de rsh entre les 2 machines (a coups d'autorisation qu'il faut bien comprendre pour que ca reste securise).
Tony
Jean-Louis Noel
Hello, bruno!
You wrote on 03 Apr 2005 22:37:21 GMT:
b> je me suis trompé , voir fa fonction exec() b> mais cette fonction est interdite sur certain serveur .
Merci.
C'était pour le script phpSysInfo et il fonctionne en rexec en modifiant :
Comment demander, avec php, l'exécution d'un programme sur une autre machine?
Exemple : Un programme php s'exécute sur la machine 'ns' et je voudrais connaître la mémoire libre sur la machine 'news'.
je vois que tu postes sur machine Windows, est-ce que le contexte est purement Windows ou full-linux ? Vu le nom des machines, ce doit etre en environnement Unix ...
- sous linux :
* rsh, rexec, rlogin, telnet, ssh sont la pour réaliser des executions distance,
- sous Windows : ben je ne connaissais pas,
- en environnement intranet, il est possible lorsqu'un serveur Web est installé sur la machine distance (news) de faire appel a un script php, dont le resultat est assimilé localement (ns) par un autre script php.
Jean-Louis Noel wrote:
Hello, All!
Comment demander, avec php, l'exécution d'un programme
sur une autre machine?
Exemple :
Un programme php s'exécute sur la machine 'ns' et je
voudrais connaître la mémoire libre sur la machine
'news'.
je vois que tu postes sur machine Windows, est-ce que
le contexte est purement Windows ou full-linux ?
Vu le nom des machines, ce doit etre en environnement Unix ...
- sous linux :
* rsh, rexec, rlogin, telnet, ssh sont la pour réaliser
des executions distance,
- sous Windows : ben je ne connaissais pas,
- en environnement intranet, il est possible lorsqu'un
serveur Web est installé sur la machine distance (news)
de faire appel a un script php, dont le resultat est
assimilé localement (ns) par un autre script php.
Comment demander, avec php, l'exécution d'un programme sur une autre machine?
Exemple : Un programme php s'exécute sur la machine 'ns' et je voudrais connaître la mémoire libre sur la machine 'news'.
je vois que tu postes sur machine Windows, est-ce que le contexte est purement Windows ou full-linux ? Vu le nom des machines, ce doit etre en environnement Unix ...
- sous linux :
* rsh, rexec, rlogin, telnet, ssh sont la pour réaliser des executions distance,
- sous Windows : ben je ne connaissais pas,
- en environnement intranet, il est possible lorsqu'un serveur Web est installé sur la machine distance (news) de faire appel a un script php, dont le resultat est assimilé localement (ns) par un autre script php.