downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

Domínio Unix: Unix e UDG> <Lista de Transportes via Socket Suportados
[edit] Last updated: Fri, 24 May 2013

view this page in

Internet Domain: TCP, UDP, SSL, e TLS

PHP 4, PHP 5, PHP 6. ssl:// & tls:// desde o PHP 4.3.0 sslv2:// & sslv3:// desde o PHP 5.0.2

Nota: Se nenhum transporte for especificado, tcp:// será usado.

  • 127.0.0.1
  • fe80::1
  • www.example.com
  • tcp://127.0.0.1
  • tcp://fe80::1
  • tcp://www.example.com
  • udp://www.example.com
  • ssl://www.example.com
  • sslv2://www.example.com
  • sslv3://www.example.com
  • tls://www.example.com

Sockets no Domínio Internet esperam um número de porta além do endereço desejado. No caso de fsockopen(), esta é especificada no segundo parâmetro e, portanto, não afeta a formatação da URL. Com stream_socket_client() e funções relacionadas como com as URLs tradicionais, no entanto, o número da porta é especificado como um sufixo à URL delimitada por dois-pontos.

  • tcp://127.0.0.1:80
  • tcp://[fe80::1]:80
  • tcp://www.example.com:80

Nota: Endereços númericos com número de porta em IPv6
No segundo exemplo acima, enquanto os exemplos em IPv4 e nome de host permaneceram iguais, exceto pela adição do dois-pontos e número da porta, o endereço em IPv6 é envolto em colchetes: [fe80::1]. Isso é para destinguir entre os dois pontos de um endereço IPv6 e como separador de porta no IPv4.

Os transportes ssl:// e tls:// (disponíveis apenas quando o suporte a openssl é compilado no PHP) são extensões do transporte tcp:// que incluem encriptação SSL. Desde o PHP 4.3.0, suporte a OpenSSL deve ser compilado estaticamente no PHP, no PHP 5.0.0 ele pode ser compilado como um módulo ou estaticamente.

ssl:// tentará negociar uma conexão SSL V2 ou SSL V3, dependendo das capacidades e preferências do host remoto. sslv2:// e sslv3:// selecionará o protocolo de maneira explícita.



add a note add a note User Contributed Notes Internet Domain: TCP, UDP, SSL, e TLS - [2 notes]
up
0
stefan at example dot com
2 years ago
Actually, PHP is very able to start with an unencrypted connection and then switch to an encrypted one - refer to http://php.net/stream_socket_enable_crypto .
up
0
pablo dot livardo at gmail dot com
3 years ago
I've been having a problem with a TLS connection.

<?php
$fp
= fsockopen("tls://mail.example.com", 587, $errno, $errstr);
?>

Which gives me an error of:

SSL operation failed with code 1. OpenSSL Error messages: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number

I believe this is caused by PHP not being able to start with an unencrypted connection and then switch to encryption even though the functionality is built into OpenSSL.

For Google Mail users you can avoid this by using port 465 instead of 587.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites