这里提供了如何使用此函数的示例。
if( $csr = openssl_csr_new( array(
"countryName"=>"PL",
"stateOrProvinceName" => "blah",
"organizationName" => "company ltd",
"commonName"=>"foo.bar.com",
"Email"=>"[email protected]"), $privkey )
)
{
openssl_csr_export_to_file( $csr, "out.csr");
}
else
{
printf("failed\n");
}
请记住,键区分大小写(例如,使用“email”而不是“Email”,您会收到警告)。还要记住,数组中参数的顺序很重要。将“Email”移到 commonName 上方,并检查您得到的结果(如果您不知道如何操作:“openssl req -noout -text -in out.csr”)。
我也遇到过这种情况,当我乱序排列时(如果我记得没错,Email 在 countryName 之后,或者这里有很多 Email),会导致段错误,所以请注意。