Замечание:
Если транспортный протокол не указан, будет использован tcp://.
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
tls://www.example.com
Интернет-сокеты требуют указания порта в дополнение к адресу. В
случае fsockopen(), порт передаётся вторым параметром и
не затрагивает строку адреса. При работе с
stream_socket_client() и другими близкими функциями, как
и в случае со стандартными URL, порт указывается в конце адреса, отделённый
двоеточием.
tcp://127.0.0.1:80
tcp://[fe80::1]:80
tcp://www.example.com:80
IPv6 численные адреса с указанием порта:
Во втором примере выше, IPv6 адрес, заключён в квадратные скобки:
[fe80::1]. Это сделано для того, чтобы отличить
двоеточие в адресе от двоеточия при указании порта.
Протоколы ssl:// and tls://
(доступные только если поддержка openssl включена в PHP) являются
расширениями tcp://, дополняющими его SSL-шифрованием.
Начиная с PHP 4.3.0, для работы с ssl-протоколами,
PHP
должен быть собран с поддержкой OpenSSL, в PHP 5.0.0
он может быть представлен как модуль.
Таблица O-1.
Параметры для протоколов ssl:// и tls://
(начиная с PHP 4.3.2)
Имя
Использование
По умолчанию
verify_peer
TRUE или FALSE.
Требует проверки SSL-сертификата.
FALSE
allow_self_signed
TRUE или FALSE.
Позволяет использовать само-подписанные сертификаты.
FALSE
cafile
Расположение в локальной файловой системе файла сертификата, который
будет использовать verify_peer для
аутентифицирования идентификатора удалённого сервера(клиента).
capath
Если cafile не указан, или сертификат не найден,
поиск подходящего сертификата продолжается в директории capath.
Значением директивы должен быть путь к директории, содержащей сертификаты.
local_cert
Путь к локальному файлу сертификата. Это должен быть
PEM-энкодированный файл, содержащий ваш сертификат и частный ключ.
Опционально он может содержать цепочку сертфиикатов издателей.
passphrase
Ключевое слово, по которому был энкодирован ваш local_cert.
CN_match
Общее название (Common Name), которого мы ожидаем. PHP будет сравнивать, используя
вайлд-карды. Если общее название не подходит, соединение будет
разорвано.
Замечание:
Постольку поскольку ssl:// протокол является базисом
для
https:// и
ftps:// врапперов,
все директивы ssl:// применяются как для
https://, так и для ftps://.