openssl函数在https停无法使用
程序员文章站
2024-01-07 12:55:22
...
openssl函数在https下无法使用
问题:Linux+apache2+php5的环境下,配置ssl使https可以访问,然后执行测试代码:
运行后,页面提示无法连接服务器。
经测试,问题在于openssl_public_encrypt()函数无法执行。
openssl_get_publickey()函数正常通过,但是openssl_public_encrypt()函数却使apache崩掉。
直接后台执行:/path/php -f ssl-encry.php ,只有1、2有结果,第3处空。
Windows环境下测试正常输出。
此种情如何解决?
问题:Linux+apache2+php5的环境下,配置ssl使https可以访问,然后执行测试代码:
#ssl-encry.php
$source = "This is encry-content.";
echo "1.Source: $source";
$fp=fopen("/path/to/certificate.crt","r");
$pub_key=fread($fp,8192);
fclose($fp);
openssl_get_publickey($pub_key);
openssl_public_encrypt($source,$crypttext,$pub_key);
echo "2.String crypted: $crypttext";
$fp=fopen("/path/to/private.key","r");
$priv_key=fread($fp,8192);
fclose($fp);
// $passphrase is required if your key is encoded (suggested)
$passphrase = '';
$res = openssl_get_privatekey($priv_key,$passphrase);
openssl_private_decrypt($crypttext,$newsource,$res);
echo "3.String decrypt : $newsource";
?>
运行后,页面提示无法连接服务器。
经测试,问题在于openssl_public_encrypt()函数无法执行。
openssl_get_publickey()函数正常通过,但是openssl_public_encrypt()函数却使apache崩掉。
直接后台执行:/path/php -f ssl-encry.php ,只有1、2有结果,第3处空。
Windows环境下测试正常输出。
此种情如何解决?
openssl
Apache
PHP
https
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
- 最新文章
- 热门排行
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论