Bonjour à tous,
Après quelques recherche sur le forum et google, je n'ai pu trouver de réponses ou de pistes à mon problème.
Je suis actuellement en train de développer une plateforme intranet/internet en PHP qui exécute doit exécuter des programmes binaires situés sur un serveur de calcul distant. Actuellement, j'arrive à exécuter et exploiter mes programmes binaires lorsqu'ils sont situés sur le même serveur que le serveur Web via la commande PHP "passthru" avec comme paramètre le chemin vers le binaire.
Le souci et qu'il faudra à terme déporter les binaires sur un autre serveur que le serveur web pour l'alléger un peu, car un serveur web ne doit pas être un serveur de calcul.
Théoriquement, le serveur de calcul est identifié par son adresse ip, alors j'ai quelques idées mais je ne sais comment les mettre en oeuvre SIMPLEMENT.
Actuellement, je mets dans mes scripts PHP grosso modo, le code suivant:
Citation
function exec_cmd($cmd)
{
ob_start();
passthru($cmd);
$result=ob_get_contents();
ob_end_clean();
print_debug_msg($cmd."==>".$return_var);
return $result;
}
sachant que $cmd prend pour valeur une chaine de caractère comme : "/path_binary_programs/my_binary_prog first_param".
Mes idées sont les suivantes:
- Déléguer la gestion réseau à Unix en:
* Monter un système NFS ou Samba avec le chemin vers mes binaires... (Ca me plait moyennement)
* Utiliser une commande schell du style: //IP_address/path_binary_programs/my_binary_prog first_param
- Utiliser une fonction d'une bibliothèque PHP qui gère le réseau afin de faire quelque chose du genre:
* network_cmd($cmd,$ip_address);
Seulement voilà, la solution NFS/Samba ne me plait pas de trop, et pour les autres, je ne sais pas s'il est possible de faire cela sans monter de système de fichiers réseaux (NFS) et quelle serait la syntaxe et la méthodologie à suivre. Quant à la bibliothèque PHP, je ne sais pas si ça existe et si c'est le cas quelle serait la bibliothèque à utiliser et comment la mettre en oeuvre.
Merci aux ames charitables qui pourront et sauront me répondre.
J'ai posé volontairement ce post dans les forums Administration et Développement, car le sujet touche à la fois les deux domaines et peut avoir une réponse dans les deux parties.
P.S.: L'environnement de développement est le suivant:
- Configuration du serveur web
Citation
[aherbe@L3i madonne]$ uname -a && rpm -qa | grep http && rpm -qa | grep php
Linux L3i 2.6.11-1.14_FC3 #1 Thu Apr 7 19:23:49 EDT 2005 i686 i686 i386 GNU/Linux
httpd-2.0.52-3.1
httpd-suexec-2.0.52-3.1
php-gd-4.3.11-2.5
php-pear-4.3.11-2.5
php-mysql-4.3.11-2.5
php-domxml-4.3.11-2.5
php-4.3.11-2.5
php-ldap-4.3.11-2.5
[aherbe@L3i madonne]$