PHP: function.fopen : failed to open stream
Posted by vostorga - 05/10/11 at 09:10:38 amSi en php al intentar utilizar fopen obtienen un resultado como:
Download Failed: Remote Server connection failed: fopen(http://jsitepoint.com/update/packages/joomla/update.xml) [function.fopen]: failed to open stream: no suitable wrapper could be found; Using Proxy: No(42)
La solución es editar php.ini modificando/agregando:
; Whether to allow the treatment of URLs (like http:// or ftp://) as files.
; http://php.net/allow-url-fopen
allow_url_fopen = On
Activando soporte Oracle Instant Client + PHP5 en Debian Linux
Posted by vostorga - 27/11/09 at 11:11:09 amPara conectarse a una base de datos Oracle con PHP 5, se puede hacer a través del “Oracle Instant Client” y el modulo oci8 de pear.
Primero se debe descargar los paquetes “Basic” y “SDK” desde http://www.oracle.com/technology/tech/oci/instantclient/instantclient.html. En mi caso, los archivos fueron
- instantclient-basic-linux32-10.2.0.3-20061115.zip
- instantclient-sdk-linux32-10.2.0.3-20061115.zip
Creamos directorios y descomprimimos
# mkdir -p /opt/oracle/instantclient
# cd /opt/oracle/instantclient
# unzip instantclient-basic-linux32-10.2.0.3-20061115.zip
# unzip instantclient-sdk-linux32-10.2.0.3-20061115.zip
Agregamos las librerías de oracle a las librerías del sistema
# echo /opt/oracle/instantclient >> /etc/ld.so.conf
# ldconfig
Creamos los vínculos simbólicos en caso de que el comando anterior no lo haya hecho:
# cd instantclient_10_2
# ln -s libclntsh.so.10.1 libclntsh.so
# ln -s libocci.so.10.1 libocci.so
Instalamos paquetes necesarios para la configuración del módulo oci8, entre ellos Pear
# apt-get install php-pear php5-dev build-essential
En teoría el comando pecl install oci8 debería de funcionar, pero aparentemente no puede trabajar con las librerías de Oracle Instanclient, así que procedemos a ejecutar los pasos manualmente
# mkdir -p /usr/local/src
# cd /usr/local/src
# pecl download oci8
# tar xfz oci8-1.3.5.tgz
# cd oci8-1.3.5
# phpize
# ./configure –with-oci8=shared,instantclient,/opt/oracle/instantclient/instantclient_10_2
# make
# make install
El nombre del archivo oci8-1.3.5.tgz cambiará dependiendo de nuevas versiones
Luego activamos el módulo oci8 en el archivo php.ini (/etc/php5/apache2/php.ini and /etc/php5/cli/php.ini), con la siguiente línea:
extension=oci8.so
Este paso tarde o temprano tendrá que ejecutarse, asi que mejor de una vez configuramos el archivo tnsnames.ora
# mkdir -p /opt/oracle/instantclient/instantclient_10_2/network/admin
Editamos el tnsnames.ora de acuerdo a nuestras necesidades.
# vi /opt/oracle/instantclient/instantclient_10_2/network/admin/tnsnames.ora
Ahora se procede a reiniciar Apache y listo :), podemos auxiliarnos de phpinfo() para comprobar que el módulo oci8 está cargado.
Powered by WordPress with GimpStyle Theme design by Horacio Bella.
Entries and comments feeds.
Valid XHTML and CSS.