Appendices
PHP Manual

Lista de Transportes de Sockets Soportados

Table of Contents

La siguiente es una lista de los varios transportes de socket estilo URL que PHP tiene integrados para su uso con funciones de sockets basados en secuencias, tales como fsockopen(), y stream_socket_client(). Estos transportes no se aplican a la Extensión de Sockets.

Para una lista de transportes instalados con su versión de PHP use stream_get_transports().

Dominio de Internet: TCP, UDP, SSL, y TLS

PHP 3, PHP 4, PHP 5. ssl:// y tls:// a partir de PHP 4.3.0, sslv2:// y sslv3:// a partir de PHP 5.0.2

Note: Si no se especifica un transporte, se asumirá tcp://

Los sockets del Dominio de Internet esperan un número de puerto junto con una dirección de destino. En el caso de fsockopen(), éste es especificado en un segundo parámetro y por lo tanto no tiene impacto sobre el formato de la URL de transporte. Sin embargo, en el caso de stream_socket_client() y funciones relacionadas, así como ocurre con URLs tradicionales, el número de puerto se especifica como un sufijo del URL de transporte delimitado con el signo dos puntos.

Note: Direcciones IPv6 numéricas con números de puerto En el segundo ejemplo anterior, mientras que los ejemplos IPv4 y con nombre de dominio fueron modificados solo ligeramente con la adición de sus dos puntos y número de puerto, la dirección IPv6 es rodeada por corchetes cuadrados: [fe80::1]. Esto es para poder distinguir entre los dos puntos usados en una dirección IPv6 y aquellos usados para delimitar el número de puerto.

Los transportes ssl:// y tls:// (disponibles únicamente cuando se compila el soporte para openssl con PHP) son extensiones del transporte tcp:// el cual incluye encripción SSL. A partir de PHP 4.3.0 el soporte OpenSSL debe ser compilado estáticamente con PHP, a partir de PHP 5.0.0 puede ser compilado como módulo o estáticamente.

ssl:// intentará negociar una conexión SSL V2 o SSL V3 dependiendo de las capacidades y preferencias del host remoto. sslv2:// y sslv3:// seleccionarán el protocolo SSL V2 o SSL V3 explícitamente.

Opciones de contexto para los transportes ssl:// y tls:// (a partir de PHP 4.3.2)
Nombre Uso Predeterminado
verify_peer TRUE o FALSE. Requerir verificación del certificado SSL usado. FALSE
allow_self_signed TRUE o FALSE. Permitir certificados firmados por uno mismo. FALSE
cafile Ubicación del archivo de Autoridad de Certificado en un sistema de archivos local, el cual debe ser usado con la opción de contexto verify_peer para verificar la identidad del conector remoto.  
capath Si no se especifica cafile o el certificado no se encuentra allí, el directorio apuntado por capath es usado para buscar un certificado apropiado. capath debe ser un directorio de certificados correctamente habilitado mediante resumen criptográfico.  
local_cert Ruta al archivo de certificado local en el sistema de archivos. Debe ser un archivo codificado mediante PEM, el cual contenga su certificado y llave privada. Opcionalmente, puede contener la cadena de expendedores del certificado.  
passphrase La contraseña con la que el archivo local_cert fue codificado.  
CN_match El nombre común (Common Name) que estamos esperando. PHP realizará comparaciones limitadas de comodines. Si el nombre común no produce coincidencias, el intento de conexión fallará.  

Note: Debido a que ssl:// es el transporte base para las envolturas https:// y ftps://, cualquier opción de contexto que se aplique a ssl:// también se aplica a https:// y ftps://.


Appendices
PHP Manual