El caso es que he sustituido el comando por un env, para que me devuelva las variables de entorno del usuario que ejecuta el comando y me devuelve estos:
- Código: Seleccionar todo
HTTP_HOST=123.123.123.123
HTTP_USER_AGENT=Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1 HTTP_ACCEPT=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
HTTP_ACCEPT_LANGUAGE=es
HTTP_ACCEPT_ENCODING=gzip,deflate
HTTP_ACCEPT_CHARSET=ISO-8859-1,utf-8;q=0.7,*;q=0.7
HTTP_KEEP_ALIVE=300
HTTP_CONNECTION=keep-alive
HTTP_COOKIE=locale=en-US;
PHPSESSID=32123123123132123123123; psaContext=domains; BarExpanded=True HTTP_CACHE_CONTROL=max-age=0
PATH=/sbin:/usr/sbin:/bin:/usr/bin
SERVER_SIGNATURE=
Apache/2.2.3 (CentOS) Server at 123.123.123.123 Port 80
SERVER_SOFTWARE=Apache/2.2.3 (CentOS) SERVER_NAME=123.123.123.123
SERVER_ADDR=123.123.123.123SERVER_PORT=80 REMOTE_ADDR=123.123.123.123
DOCUMENT_ROOT=/var/www/vhosts/default/htdocs
SERVER_ADMIN=root@localhost SCRIPT_FILENAME=/var/www/vhosts/default/cgi-bin/caixa.cgi REMOTE_PORT=63788 GATEWAY_INTERFACE=CGI/1.1
SERVER_PROTOCOL=HTTP/1.1
REQUEST_METHOD=GET
QUERY_STRING=
REQUEST_URI=/cgi-bin/caixa.cgi
SCRIPT_NAME=/cgi-bin/caixa.cgi
Como podemos ver, el CLASSPATH no existe y el PATH es diferente al que tengo definido, eso es porque el PATH lo tengo definido cuando ejecuto una consola con el usuario ROOT, mientras que esté con Apache no tendré los valores correctos del PATH; el caso es que no existe el usuario Apache en el sistema para poder añadirle las variables de entorno en su .bash_profile.
¿Sabéis cómo se hace? Ya sé que no es cosa de Perl... esto es más de Linux... pero por si alguien sabe de estas cosas...