2012-11-21 95 views
1

通過Web界面我試圖檢查給定的公鑰是否有效。 bash命令gpg --import key.pub根據給定的鍵返回import successful/failed,但我不想使用$data = system("/usr/bin/gpg --import $key)出於我自己的安全考慮。有其他選擇嗎?檢查GPG/PGP公鑰是否有效

回答

1

好吧,我做了一些調試,這就是我發現:

nginx的守護程序nginx:nginx,沒有主目錄,下運行NOLOGIN殼

當我執行sudo -u nginx php -r "echo system("gpg -k");"

/home/nginx/.gnupg: directory does not exist!

所以,我執行下列操作:

mkdir -p /home/nginx/.gnupg; chown -R nginx:nginx /home/nginx/

然後,如果工程測試:

sudo -u nginx php -r "echo system("gpg --homedir /home/nginx/.gnupg --dry-run --batch --import key.pub");

和我有輸出!