pem文件概述
pem文件是服務(wù)器向蘋(píng)果服務(wù)器做推送時(shí)候需要的文件, 主要是給php向蘋(píng)果服務(wù)器驗(yàn)證時(shí)使用.
pem文件生成步驟
-
將證書(shū)導(dǎo)出生成 p12 文件
-
打開(kāi)鑰匙串, 選擇需要生成的推送證書(shū).
1.png -
右鍵該證書(shū), 在彈出的選項(xiàng)列表中選擇導(dǎo)出...
2.png -
在彈窗中修改名稱(chēng)(apns-dev-cert) 存儲(chǔ)位置(桌面), 點(diǎn)擊存儲(chǔ). 然后,在新彈窗中輸入密碼, 點(diǎn)擊 "好".
3.png
-
-
將 private key 導(dǎo)出生成 p12 文件
導(dǎo)出過(guò)程與 "將證書(shū)導(dǎo)出生成 p12 文件" 步驟相同, 唯一不同的就是第二步, 導(dǎo)出的是 private key, 并修改名稱(chēng)為apns-dev-key 如圖:
4.png -
生成pem文件
-
將 apns-dev-cert.p12 生成 apns-dev-cert.pem 文件
- 打開(kāi)終端, 輸入
cd Desktop
. - 接著輸入
openssl pkcs12 -clcerts -nokeys -out apns-dev-cert.pem -in apns-dev-cert.p12
. -
輸入密碼, 輸入123456.(此處為導(dǎo)出p12的保護(hù)密碼), 此時(shí)桌面會(huì)生成一個(gè)apns-dev-cert.pem文件.
5.png
- 打開(kāi)終端, 輸入
-
將 apns-dev-key.p12 生成 apns-dev-key.pem 文件
- 打開(kāi)終端, 輸入
cd Desktop
. - 接著輸入
openssl pkcs12 -nocerts -out apns-dev-key.pem -in apns-dev-key.p12
. - 輸入驗(yàn)證密碼, 輸入123456.(此處為導(dǎo)出p12的保護(hù)密碼).
-
輸入保護(hù)密碼, 然后驗(yàn)證保護(hù)密碼(服務(wù)端用到的密碼), 此時(shí)桌面會(huì)生成一個(gè)apns-dev-key.pem文件
6.png
- 打開(kāi)終端, 輸入
-
合成 pem 文件
將apns-dev-cert.pem文件和apns-dev-key.pem文件合成為apns-dev.pem文件. 在終端繼續(xù)輸入
cat apns-dev-cert.pem apns-dev-key.pem > apns-dev.pem
此時(shí)桌面會(huì)生成一個(gè)apns-dev.pem文件.
7.png
-
-
驗(yàn)證pem文件
在終端輸入
openssl s_client -connect gateway.sandbox.push.apple.com:2195 -cert apns-dev-cert.pem -key apns-dev-key.pem
如果終端最后顯示以下內(nèi)容,表示配置成功
> Key-Arg : None
Start Time: 1517903359
Timeout : 300 (sec)
Verify return code: 0 (ok)