調試Crypt_GPG的過程

來源:互聯網
上載者:User
在瀏覽器端的錯誤輸出資訊:

( ! ) Fatal error: Uncaught <tablestyle="border: 1px"cellspacing="0"><tr><tdcolspan="3"style="background: #ff9999"><b>Crypt_GPG_FileExceptionb>: The 'homedir' "/Library/WebServer/.gnupg" is not readable or does not exist and cannot be created. This can happen if 'homedir' is not specified in the Crypt_GPG options, Crypt_GPG is run as the web user, and the web user has no home directory. in <b>/usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.phpb> on line <b>278b>td>tr><tr><tdcolspan="3"style="background-color: #aaaaaa; text-align: center; font-weight: bold;">Exception tracetd>tr><tr><tdstyle="text-align: center; background: #cccccc; width:20px; font-weight: bold;">#td><tdstyle="text-align: center; background: #cccccc; font-weight: bold;">Functiontd><tdstyle="text-align: center; background: #cccccc; font-weight: bold;">Locationtd>tr><tr><tdstyle="text-align: center;">0td><td>Crypt_GPG_Engine->__construct(Array)td><td>/usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php in /usr/local/webdata/andy/fanli/citic/Crypt/GPG/Engine.php on line 541

命令列輸出的錯誤資訊:

PHP Fatal error:  Uncaught PEAR_Exception: gpg-agent binary not found.If you are sure the gpg-agent is installed, please specify the location of the gpg-agent binary using the 'agent' driver option.in /usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php on line 278#0 /usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php(278): Crypt_GPG_Engine->__construct(Array)#1 /usr/local/webdata/andy/fanli/citic/gpg2.php(9): Crypt_GPGAbstract->__construct()#2 {main}  thrown in /usr/local/webdata/andy/fanli/citic/Crypt/GPG/Engine.php on line 601Fatal error: Uncaught PEAR_Exception: gpg-agent binary not found.If you are sure the gpg-agent is installed, please specify the location of the gpg-agent binary using the 'agent' driver option.in /usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php on line 278#0 /usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php(278): Crypt_GPG_Engine->__construct(Array)#1 /usr/local/webdata/andy/fanli/citic/gpg2.php(9): Crypt_GPGAbstract->__construct()#2 {main}  thrown in /usr/local/webdata/andy/fanli/citic/Crypt/GPG/Engine.php on line 601

第一個browser中報的錯我分析是許可權問題,第二個在shell中運行才是其真正的問題所在,根據提示,使用brew安裝gpg-agent。

之後我編寫代碼如下:

require_once'./Crypt/GPG.php';$gpg = new Crypt_GPG();$key = getKey();$gpg->addDecryptKey('zhangsanfeng','123456');$encrypted = file_get_contents('wait_for_decrpyt.txt.gpg');$data = $gpg->decrypt($encrypted);echo'
';var_dump($data);exit;

終於解密成功!!!

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

以上就介紹了調試Crypt_GPG的過程,包括了方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.