欢迎来到云服务器

Directadmin Linux面板

PHP5.6有SSL连接问题,但较老的PHP版本工作正常

随着php 5.6的发布,他们已经做出了显着的改变,现在它为所有连接验证SSL证书。
http://php.net/manual/en/migration56.openssl.php
 
这会导致许多php脚本出现问题,例如连接到DA的roundcube密码插件,或连接到https套接字的任何其他php脚本。
 
对于roundcube密码插件以及受影响的其他类似连接,一种解决方案是确保您连接的主机名具有有效的SSL证书。

A)我们假设你的主机名是 

  1. roundcube密码插件连接到端口2222上的https,因此您必须确保DA在那里运行有效的证书。
    您可以使用本指南在2222上的DA主机名上设置证书,但也适用于Apache和您的邮件服务器

  2. 接下来,您将要告诉roundcube连接到server.hostname.com而不是“localhost”。
    编辑:

    /var/www/html/roundcube/plugins/password

    并将该值设置为:

    $config['password_directadmin_host'] = 'ssl://server.hostname.com';



B)另一种选择是禁用PHP调用的证书检查。 Curl可以做到这一点,我们已经将httpsocket类更新为使用curl的版本3.0.0。 要为RoundCube获取这些更改,请输入:

cd /var/www/html/roundcube/plugins/password/drivers
wget -O directadmin.php http://files1.directadmin.com/services/all/roundcube/directadmin3.php



C)更新:CustomBuild 2.0现在可以下载一个有效的cacert.pem来允许php在没有其他更改的情况下正常工作。 如果您获得CustomBuild 2.0 rev 1624或更新版本,则可以键入:

./build php_cacert

它将在php默认证书的位置设置证书,例如:

/usr/local/bin/php -r "if (function_exists('openssl_get_cert_locations')) echo openssl_get_cert_locations()['default_cert_file'];"

如果你没有输出,那么你可能会使用PHP 5.5或更高版本。
腾讯云代理

Copyright © 2003-2021 MFISP.COM. 国外vps服务器租用 梦飞云服务器租用 版权所有 粤ICP备11019662号