2012-01-10 480 views
0


我正在拉用戶證書並嘗試使用他們的信息登錄它們。這是迄今爲止我所擁有的。使用PHP運行Apache我能夠回顯$ _SERVER變量,該變量是一個數組,其中包含有關用戶的各種信息,包括我假設的客戶端證書。openssl_x509_parse返回false

我甚至能運行以下命令:

echo($_SERVER['HTTP_SSL_CLIENT_CERT']);

以上線路輸出全:

-----BEGIN CERTIFICATE---- BLAH...BLAH...BLAH -----END CERTIFICATE-----

但是,如果我運行下面的命令:

$cert_data = openssl_x509_parse($_SERVER['HTTP_SSL_CLIENT_CERT']);

它返回false,我似乎無法得到任何東西。

我已經試過: openssl_x509_read也無濟於事。

我想知道如果我需要後的新行:
----- BEGIN CERTIFICATE ----- 因爲它彷彿證書文本的只是一個大的長行。

在此先感謝!

回答

1

重新審視這個問題之後事實證明,我需要將下面的行添加到Apache的httpd.conf文件

SSLOptions +StdEnvVars +ExportCertData 

希望幫助別人。