Поддержка SSL для PHP 5.3.3 и Apache
После тщательного изучения того, почему я не могу подключить свое приложение к удаленному серверу по SSL с помощью PHP PDO, я обнаружил PDO::MYSQL_ATTR_SSL..., но, похоже, они существуют только для 5.3.7 или выше.
Мой вопрос такой. Доступна ли поддержка SSL только для PHP 5.3.7 и выше? Или я не прав в своих выводах?
2 ответа
Согласно документации, поддержка ssl вводится в 5.3.7.
Журнал изменений:
- 5.4.0 MySQL клиентские библиотеки 4.1 и ниже больше не поддерживаются.
- 5.3.9 Добавлена поддержка SSL с mysqlnd и OpenSSL.
- 5.3.7 Добавлена поддержка SSL с libmysqlclient и OpenSSL.
и свойства доступны только у 5.3.7 или выше.
PDO::MYSQL_ATTR_SSL_CA (integer)
The file path to the SSL certificate authority.
This exists as of PHP 5.3.7.
PDO::MYSQL_ATTR_SSL_CAPATH (integer)
The file path to the directory that contains the trusted SSL CA certificates, which are stored in PEM format.
This exists as of PHP 5.3.7.
PDO::MYSQL_ATTR_SSL_CERT (integer)
The file path to the SSL certificate.
This exists as of PHP 5.3.7.
PDO::MYSQL_ATTR_SSL_CIPHER (integer)
A list of one or more permissible ciphers to use for SSL encryption, in a format understood by OpenSSL. For example: DHE-RSA-AES256-SHA:AES128-SHA
This exists as of PHP 5.3.7.
PDO::MYSQL_ATTR_SSL_KEY (integer)
The file path to the SSL key.
This exists as of PHP 5.3.7.
Смотри также: http://php.net/manual/en/ref.pdo-mysql.php
Для поддержки SSL вы должны включить модуль php_openssl. В противном случае у вас нет возможности установить соединение. Здесь то же самое с file_get_contents для примера.
Проверьте, активирован ли модуль и установлен ли openssl.
Если вы используете систему Linux, вы можете установить модуль через менеджер пакетов.