Error con migrar_claves Versión 290 [SOLUCIONADO]

Buen día:

Estamos migrando de versión 270 a 290, cuando ejecuto el comando migrar_claves me devuelve el error:

‘La extensión de php ‘pdo_informix’ no esta instalada’

Pero si la tenemos instalada y funcionando, de hecho la aplicación se está conectando a la BD vía pdo, ya que en la solapa de Fechas de Exámen, en el combo de Carrera me está listando las mismas.

El entorno es:

Debian Wheezy
Apache 2.4.1
PHP 5.6.9
PDO_Informix

Gracias!

Ezequiel Molina
Facultad de Ciencias Agrarias, UNJu

Hola, si corres el comando php -m te lista la extensión pdo_informix?, envíame el resultado del siguiente comando: php -m | grep pdo_informix. saludos.

Hola!

No devuelve nada!! Pero en un phpinfo si aparece :confused:

Ezequiel

Claro, no esta cargada la extensión pdo_informix, el error ese lo da en el archivo src/siu/bootstrap.php función protected function check_extensiones():


$this->check_extension('pdo_informix');


private function check_extension($extension)
	{
		if (!\extension_loaded($extension)) {
			$error = "La extensión de php '$extension' no está instalada.";
			$url_doc = 'http://repositorio.siu.edu.ar/trac/g3w2/wiki/doc/instalacion/';
			echo("$error
<a href='$url_doc'>Ver documentación</a>");
			die();
		}
	}

por eso la función extension_loaded esta devolviendo false, tendrías que instalar el pdo_informix.

Nota: proba reiniciando apache y volve a correr php -m | grep pdo_informix a ver si la toma.

envíame el listado que te devuelve php -m.

saludos.

Si lo tengo instalado…por eso te decia que en un archivo php que tiene la función phpinfo si me aparece, por otro lado, sí se conecta a la BD porque en la aplicación puedo ver las fechas de exámen (no hace falta loguearse para verlas). Adjunto imágenes.

Gracias!
Ezequiel


guarani.jpg

guarani.png

Hola

Recordá que php puede manejar varios php.ini.
Tal vez te está faltando configurarla para que se ejecute por comando.

Emilio

Claro, tenes dos:

/etc/php5/cli/php.ini para la linea de comandos y /etc/php5/apache2/php.ini para web, revisa que lo tengas habilitado en los dos.

saludos.

Listo!

No sabía que se configuraba por separado lo que es el módulo PHP por consola y lo que es web. Hasta el momento habíamos trabajado con Windows (y nunca nos tocó este tipo de configuración), Linux es experiencia nueva para nosotros ja!

echo “extension=pdo_informix.so” > /etc/php5/cli/conf.d/pdo_informix.ini

Esa fué la solución. Muchas Gracias Leonel y Emilio.

Ezequiel

No está de más saber que puede haber un php.ini distinto por virtual host…

En cada virtual host podrías poner “PHPINIDir /ruta/al/ini/del/vhost/” con lo que cada virtual host podría tener diferentes módulos activados.