> 백엔드 개발 > PHP 튜토리얼 > openssl函数在https停无法使用

openssl函数在https停无法使用

WBOY
풀어 주다: 2016-06-13 12:47:43
원래의
847명이 탐색했습니다.

openssl函数在https下无法使用
问题:Linux+apache2+php5的环境下,配置ssl使https可以访问,然后执行测试代码:

<br />
<?php<br />
#ssl-encry.php<br />
$source = "This is encry-content.";<br />
echo "1.Source: $source";<br />
$fp=fopen("/path/to/certificate.crt","r");<br />
$pub_key=fread($fp,8192);<br />
fclose($fp);<br />
openssl_get_publickey($pub_key);<br />
openssl_public_encrypt($source,$crypttext,$pub_key);<br />
echo "2.String crypted: $crypttext";<br />
<br />
$fp=fopen("/path/to/private.key","r");<br />
$priv_key=fread($fp,8192);<br />
fclose($fp);<br />
// $passphrase is required if your key is encoded (suggested)<br />
$passphrase = '';<br />
$res = openssl_get_privatekey($priv_key,$passphrase);<br />
openssl_private_decrypt($crypttext,$newsource,$res);<br />
echo "3.String decrypt : $newsource";<br />
?> <br />
<br />
로그인 후 복사

运行后,页面提示无法连接服务器。
经测试,问题在于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.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿