función set_time_limit() y otras deshabilitadas por seguridad ...

Estimados:

Estoy intentando instalar un sistema toba en producción en hosting y me estoy encontrando con algunos problemas:
Cabe destacar que estoy implementando con Toba_1.5.0 y que el hosting usa PHP Version 5.2.4, PostgreSQL 8.2.5.
Existen ciertas funciones php que utiliza la plataforma que han sido deshabilitadas por el hosting por cuestiones de seguridad:

Warning: set_time_limit() has been disabled for security reasons in /www/docs/ejemplo.com.ar/toba_1.5/php/nucleo/toba_nucleo.php on line 241

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /www/docs/ejemplo.com.ar/toba_1.5/php/nucleo/toba_nucleo.php:241) in /www/docs/ejemplo.com.ar/toba_1.5/php/nucleo/lib/toba_manejador_sesiones.php on line 34

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /www/docs/ejemplo.com.ar/toba_1.5/php/nucleo/toba_nucleo.php:241) in /www/docs/ejemplo.com.ar/toba_1.5/php/nucleo/lib/toba_manejador_sesiones.php on line 34

Warning: parse_ini_file() has been disabled for security reasons in /www/docs/ejemplo.com.ar/toba_1.5/php/nucleo/lib/toba_instancia.php on line 46
El proyecto ‘ejemplo’ no se encuentra cargado en la instancia

Quisiera saber si estos warnings provocan que finalmente no se cargue la instancia, afectando al funcionamiento de la aplicación. O bien, se produce por otras cuestiones, dado que no me dejaron, por razones de seguridad, crear el include en el apache. Pero seguí las recomendaciones del trac http://toba.siu.edu.ar/trac/toba/wiki/FAQ#hosting-compartido.

Saludos,
Claudio.-

En la instalación de un sistema desarrollado con Toba_1.5.0 en producción en hosting compartido, observo que por seguridad se deshabilitan las siguientes funciones php:
El hosting cuenta con:

  • Linux,
  • PHP Version 5.2.4
  • PostgreSQL 8.2.5.
  • Apache 2.2.x con las extensiones GD2, PDO-PGSQL, y PGSQL.
  • Magic Cuotes: off
  • Funciones deshabilitadas:
    system, exec, passthru, shell_exec, popen, proc_open, proc_close, proc_nice, proc_terminate, proc_get_status, pcntl_exec, disk_free_space, diskfreespace, set_time_limit, leak, tmpfile, escapeshellarg, escapeshellcmd, dl, php_check_syntax, php_strip_whitespace, symlink, link, openlog, ini_alter, show_source, posix_kill, posix_mkfifo, posix_setpgid, posix_setsid, posix_setuid, apache_child_terminate,parse_ini_file.

A duras penas puede conseguir que habiliten la funcion php parse_ini_file, el tema es que da otro warning por la función set_time_limit y cancela.

Consulto, si alguien esta trabajando cambiar estas funciones, o si existe alguna alternativa para evitar el uso de algunas de ellas, se que la mayoria de las citadas no se usan en un sistema en producción, pero eventualmente algunas de ellas nos limitan a la hora de instalar en un hosting compartido.

Muchas gracias
Atte. Claudio.-

Hola

Fijate si php está ejecutandose en safe_mode.
De ser así vas a tener algunos problemas.
No te dejan poner un php.ini propio?

Emilio

Hola Claudio.
Bueno saberlo, ahora hago una prueba local con el safe_mode activado y subo un fix a la 1.5

Bien, ahí subi el fix a la rama 1.5 del set_time_limit . Probe el proyecto toba_referencia (previamente instalado) y no encontre otro problema a simple vista.

Si lo bajaste por svn deberías asegurarte que apunta a esa rama (http://repositorio.siu.edu.ar/svn/toba/trunk_versiones/1.5) y actualizarla. Si lo bajaste del zip deberías por ahora aplicar este cambio a mano

¿Ya tenes el proyecto instalado o esto te sale a la hora de instalar?
A medida que te vayas topando con los errores de esta instalación los vamos solucionando en este thread.

Hola, Sebatián

Bueno, te cuento que probé luego de actualizar toba gracias al fix que subiste y el error finalmente desapereció, ahora muestra la pagina de login, al intentar conectarme veo estos errores en el php-errors.log

[23-Aug-2010 14:23:09] PHP Warning: toba_nucleo::require_once() [function.toba-nucleo-require-once]: Unable to access /www/docs/abeja.org.ar/toba_1.5/proyectos/toba_usuarios/metadatos_compilados/gene/toba_mc_gene__basicos.php in /www/docs/abeja.org.ar/toba_1.5/php/nucleo/toba_nucleo.php on line 358

[23-Aug-2010 14:23:09] PHP Warning: toba_nucleo::require_once(/www/docs/abeja.org.ar/toba_1.5/proyectos/toba_usuarios/metadatos_compilados/gene/toba_mc_gene__basicos.php) [function.toba-nucleo-require-once]: failed to open stream: No such file or directory in /www/docs/abeja.org.ar/toba_1.5/php/nucleo/toba_nucleo.php on line 358

[23-Aug-2010 14:23:09] PHP Fatal error: toba_nucleo::require_once() [function.require]: Failed opening required ‘/www/docs/abeja.org.ar/toba_1.5/proyectos/toba_usuarios/metadatos_compilados/gene/toba_mc_gene__basicos.php’ (include_path=‘.:/usr/local/php5/lib:.:/www/docs/abeja.org.ar/toba_1.5/php:.:/www/docs/abeja.org.ar/toba_1.5/proyectos/toba_usuarios/php’) in /www/docs/abeja.org.ar/toba_1.5/php/nucleo/toba_nucleo.php on line 358

Tenés idea que puede estar ocurriendo?

Muchas Gracias,
Claudio

Por lo que entiendo el login es del proyecto toba_usuarios no?
¿Existe el archivo /www/docs/abeja.org.ar/toba_1.5/proyectos/toba_usuarios/metadatos_compilados/gene/toba_mc_gene__basicos.php ?
Fijate que tenga permisos de lectura para el usuario apache sobre esos archivos