(06-12-2010 06:57 PM)kilburn Wrote: Escribir un script de "backend", que se dispare a través del demonio ispcp. Estos scripts se ejecutan como root, pero la infraestructura es complicada y hay que vigilar mucho con la seguridad, así que no es nada recomendable en general.
Bueno en realidad como bien dice kilburn se puede hacer utilizando el mismo procedimiento que utiliza ispcp.
1. Se crea un script perl con el código de lo que queremos ejecutar:
Code:
/var/www/ispcp/engine/script_a_ejecutar.pl
le ponemos permiso 0700.
2. Creamos en el gui, (se puede hacer también a nivel admin o reseller), un botón que llame a::
Code:
/var/www/ispcp/gui/client/archivo.php
con el siguiente código:
Code:
<?php
require '../include/ispcp-lib.php';
check_login(__FILE__);
send_request();
sleep(2);
header("Location: archivo_de_vuelta.php");
?>
La función sleep(2) espera 2 segundos (o el tiempo que queramos) para que se ejecute la siguiente linea (header("Location...) de esta manera se le da tiempo a perl para que ejecute el script y cuando se vuelva al gui se vean los resultados si es necesario.
3. Editamos
Code:
/var/www/ispcp/engine/ispcp-rqst-mngr
y debajo de:
insertamos la siguiente linea:
Code:
sys_command('/var/www/ispcp/engine/script_a_ejecutar.pl &>/var/log/ispcp/script_a_ejecutar.log');
en el archivo:
Code:
var/log/ispcp/script_a_ejecutar.log
podremos depurar los errores del script.
De esta forma podemos ejecutar comandos personalizados desde el panel con el mismo nivel de seguridad que ispcp.
Saludos.