Diferencia entre revisiones de «admin/environment/php extension/curl»

De MoodleDocs
(tidy up)
(tidy up)
 
(No se muestran 5 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
{{Entorno}}
{{Entorno}}
{{Pendiente de traducir}}
== Windows ==
Para instalar la librería curl en Windows:


# Localize y abra el archivo php.ini en la carpeta php/php.ini (en versiones antiguas de XAMPP puede estar en la carpeta moodle/apache/bin)  
== Unix  ==
# encuentre la línea: <code>;extension=php_curl.dll</code>
Moodle recomienda usar libcurl con soporte para al menos TLS 1.2. Es importante actualizar principalmente por motivos de seguridad, pero también porque servicios externos (como por ejemplo, PayPal) dejarán de soportar versiones antiguas de TLS en el futuro cercano. Existen tres términos con los cuales debe familiarizarse para este proceso:
# Remueva el signo <code>;</code> al inicio de la línea
 
# Reinicie Apache
* libcurl - La librería (biblioteca) subyacente que de hecho hace las solicitudes (https://curl.haxx.se/libcurl/).
* Librerías (bibliotecas)  SSL/TLS  - UNa librerpia contra la cual será compilada libcurl. Esta librería proporciona la funcionalidad SSL/TLS en libcurl. Algunas opciones populares son OpenSSL, NSS, y GnuTLS.
* PHP/cURL - El módulo de [[PHP]] que envuelve a libcurl. Este módulo proporciona las funciones curl_* en PHP.
 
Para instalar la librería curl en Unix


If you still get an error message after doing these steps, then:
# Usted necesitará librerpias SSL/TLS actualizadas.
# Usted necesitará compilar libcurl
# Usted necesitará recompilar  PHP/cURL desde el código fuente


* Go to the ''php'' folder.
=== Distribuciones Debian y basadas en Debian (Ubuntu,...) ===
* Copy the <code>icudt##.dll</code>, <code>icuin##.dll</code> and <code>icuuc##.dll</code> files (where ''##'' is a two digit number, for example: 36 or 49).
Estos pasos deberían de funcionar en Debian 7.0 (aunque Usted podría  necesitar instalar sudo) y en Ubuntu 12.04 LTS - si Usted está usando algo más antiguo, necesitará actualizar. Por favor tome nota de que estos pasos usan los paquetes  php5-*,porque eso es lo que usan muchos repositorios para gestionar paquetes. Idealmente Usted debería de estar usando [[PHP]] 7.1, o cuando menos [[PHP]] 7. Más información al respecto en  [https://docs.moodle.org/dev/Moodle_and_PHP7 Moodle and PHP7]. Si USted está usando PHP7 o 7.1 podría ser posible sustituir los paquetes php5-* con php7-* o php7.1-* dependiende de como isntaló Usted  PHP. Este ejemplo también usa  OpenSSL, pero los pasos para otras librerías son similares.
* Go to the Apache ''bin'' directory.
* Paste the three files:
  apache/bin/icudt''49''.dll
  apache/bin/icuin''49''.dll
  apache/bin/icuuc''49''.dll
* Restart your Apache web server and retry your Moodle install process.


Tip: If it appears that WAMP comes with/has a corrupt curl.dll version, see the forum.wampserver.com thread [http://forum.wampserver.com/read.php?2,85716,93286 Wamp Server 2.2 Windows 7 64-bit and curl not working side-by-side configuration incorrect] for details of the problem together with a fix.
* Actualizar paquetes: <code>sudo apt-get update</code>
* Instalar los siguientes paquetes: <code>apt-get install git build-essential autoconf libtool libtool-bin php5-curl libbison-dev=1:2.5.dfsg-2.1 libxml2-dev libssl-dev openssl</code>
* Revisar que su versión OpenSSL sea ahora al menos 1.0.1 corriendo: <code>openssl version</code>
* Obtener los códigos fuentes de libcurl, compilar, e instalar:
  git clone https://github.com/curl/curl.git
  cd curl
  git checkout curl-7_51_0
  ./buildconf
  ./configure --with-ssl
  make
  sudo make install
* Compilar e instalar el módulo PHP/cURL
  git clone https://github.com/php/php-src.git
  cd php-src
  git checkout php-5.6.29
  cd ext/curl
  phpize
  ./configure
  make
  sudo make install
  sudo bash -c "echo \"extension=curl.so\" > /etc/php5/apache2/conf.d/20-curl.ini"
  sudo bash -c "echo \"extension=curl.so\" > /etc/php5/cli/conf.d/20-curl.ini"
* '''Nota:''' El archivo /etc/php5/[apache2|cli]/conf.d/20-curl.ini podría ya estar presente, ollamarse de una forma ligeramente diferente. Revise primeramente y modifique el comando apropiadamente.
* Reinicet apache: <code>sudo service apache2 restart</code>
* Verifique que el módulo PHP/cURL esté usando las librerías actualizadas SSL/TLS: <code>php -i | grep SSL</code>
* Usted debería ver algo similar a :
  SSL => Yes
  SSL Version => OpenSSL/1.0.1t


== Unix  ==
LA versión de SSL podría ser diferente de 1.0.1t, lo que está bien, siempre y cuando no sea más antigua que 1.0.1.
To install the curl library on Unix


# You need to recompile PHP from source
== Windows ==
# add '''--with-curl''' to the command line when you run '''configure'''
Para instalar la librería curl en Windows


=== Ubuntu y Debian ===
# Abra el archivo ''php.ini'' encontrado en la carpeta ''php/php.ini'' (versiones más antiguas de XAMPP usan la carpeta ''moodle/apache/bin'' )
To install the curl library on Ubuntu and Debian
# Encontrar la línea: <code>;extension=php_curl.dll</code>
# Quitar el caracter  <code>;</code> al principio de la línea
# Reiniciar Apache


  aptitude install php5-curl
Si continúa obteniendo un mensaje de error después de realizar estos pasos, entonces:
* Restart apache if necessary:  
sudo /etc/init.d/apache2 restart
or possibly
sudo /etc/init.d/apache restart


* Vaya a la carpeta ''php'' .
* Copie el archivo <code>icudt##.dll</code>, <code>icuin##.dll</code> y  <code>icuuc##.dll</code> (donde ''##'' es un número de dos dígitos, como por ejemplo: 36 o 49).
* Vaya al directorio ''bin'' de Apache.
* Pegue allí los siguientes tres archivos:
  apache/bin/icudt''49''.dll
  apache/bin/icuin''49''.dll
  apache/bin/icuuc''49''.dll
* Reinicie su servidor web Apache y vuelva a intentar el proceso de instalación de Moodle.


Sugerencia: Si pareciera que WAMP tiene o viene con una versión corrupta de curl.dll, vea el hilo del foro forum.wampserver.com [http://forum.wampserver.com/read.php?2,85716,93286 Wamp Server 2.2 Windows 7 64-bit and curl not working side-by-side configuration incorrect] para los detalles del problema y como resolverlo.


[[Categoría:Entorno|PHP extension]]
[[Categoría:Entorno|PHP extension]]

Revisión actual - 14:37 21 ene 2018


Unix

Moodle recomienda usar libcurl con soporte para al menos TLS 1.2. Es importante actualizar principalmente por motivos de seguridad, pero también porque servicios externos (como por ejemplo, PayPal) dejarán de soportar versiones antiguas de TLS en el futuro cercano. Existen tres términos con los cuales debe familiarizarse para este proceso:

  • libcurl - La librería (biblioteca) subyacente que de hecho hace las solicitudes (https://curl.haxx.se/libcurl/).
  • Librerías (bibliotecas) SSL/TLS - UNa librerpia contra la cual será compilada libcurl. Esta librería proporciona la funcionalidad SSL/TLS en libcurl. Algunas opciones populares son OpenSSL, NSS, y GnuTLS.
  • PHP/cURL - El módulo de PHP que envuelve a libcurl. Este módulo proporciona las funciones curl_* en PHP.

Para instalar la librería curl en Unix

  1. Usted necesitará librerpias SSL/TLS actualizadas.
  2. Usted necesitará compilar libcurl
  3. Usted necesitará recompilar PHP/cURL desde el código fuente

Distribuciones Debian y basadas en Debian (Ubuntu,...)

Estos pasos deberían de funcionar en Debian 7.0 (aunque Usted podría necesitar instalar sudo) y en Ubuntu 12.04 LTS - si Usted está usando algo más antiguo, necesitará actualizar. Por favor tome nota de que estos pasos usan los paquetes php5-*,porque eso es lo que usan muchos repositorios para gestionar paquetes. Idealmente Usted debería de estar usando PHP 7.1, o cuando menos PHP 7. Más información al respecto en Moodle and PHP7. Si USted está usando PHP7 o 7.1 podría ser posible sustituir los paquetes php5-* con php7-* o php7.1-* dependiende de como isntaló Usted PHP. Este ejemplo también usa OpenSSL, pero los pasos para otras librerías son similares.

  • Actualizar paquetes: sudo apt-get update
  • Instalar los siguientes paquetes: apt-get install git build-essential autoconf libtool libtool-bin php5-curl libbison-dev=1:2.5.dfsg-2.1 libxml2-dev libssl-dev openssl
  • Revisar que su versión OpenSSL sea ahora al menos 1.0.1 corriendo: openssl version
  • Obtener los códigos fuentes de libcurl, compilar, e instalar:
 git clone https://github.com/curl/curl.git
 cd curl
 git checkout curl-7_51_0
 ./buildconf
 ./configure --with-ssl
 make
 sudo make install
  • Compilar e instalar el módulo PHP/cURL
 git clone https://github.com/php/php-src.git
 cd php-src
 git checkout php-5.6.29
 cd ext/curl
 phpize
 ./configure
 make
 sudo make install
 sudo bash -c "echo \"extension=curl.so\" > /etc/php5/apache2/conf.d/20-curl.ini"
 sudo bash -c "echo \"extension=curl.so\" > /etc/php5/cli/conf.d/20-curl.ini"
  • Nota: El archivo /etc/php5/[apache2|cli]/conf.d/20-curl.ini podría ya estar presente, ollamarse de una forma ligeramente diferente. Revise primeramente y modifique el comando apropiadamente.
  • Reinicet apache: sudo service apache2 restart
  • Verifique que el módulo PHP/cURL esté usando las librerías actualizadas SSL/TLS: php -i | grep SSL
  • Usted debería ver algo similar a :
 SSL => Yes
 SSL Version => OpenSSL/1.0.1t

LA versión de SSL podría ser diferente de 1.0.1t, lo que está bien, siempre y cuando no sea más antigua que 1.0.1.

Windows

Para instalar la librería curl en Windows

  1. Abra el archivo php.ini encontrado en la carpeta php/php.ini (versiones más antiguas de XAMPP usan la carpeta moodle/apache/bin )
  2. Encontrar la línea: ;extension=php_curl.dll
  3. Quitar el caracter ; al principio de la línea
  4. Reiniciar Apache

Si continúa obteniendo un mensaje de error después de realizar estos pasos, entonces:

  • Vaya a la carpeta php .
  • Copie el archivo icudt##.dll, icuin##.dll y icuuc##.dll (donde ## es un número de dos dígitos, como por ejemplo: 36 o 49).
  • Vaya al directorio bin de Apache.
  • Pegue allí los siguientes tres archivos:
  apache/bin/icudt49.dll
  apache/bin/icuin49.dll
  apache/bin/icuuc49.dll
  • Reinicie su servidor web Apache y vuelva a intentar el proceso de instalación de Moodle.

Sugerencia: Si pareciera que WAMP tiene o viene con una versión corrupta de curl.dll, vea el hilo del foro forum.wampserver.com Wamp Server 2.2 Windows 7 64-bit and curl not working side-by-side configuration incorrect para los detalles del problema y como resolverlo.