调试Crypt_GPG的过程
Jul 29, 2016 am 09:15 AM在浏览器端的错误输出信息:
<code>( ! ) Fatal error: Uncaught <span>table</span><span>style</span>=<span>"border: 1px"</span><span>cellspacing</span>=<span>"0"</span>><span>tr</span>><span>td</span><span>colspan</span>=<span>"3"</span><span>style</span>=<span>"background: #ff9999"</span>><span>b</span>>Crypt_GPG_FileException<span><span>b</span>></span>: 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 <span>b</span>>/usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php<span><span>b</span>></span> on line <span>b</span>>278<span><span>b</span>></span><span><span>td</span>></span><span><span>tr</span>></span><span>tr</span>><span>td</span><span>colspan</span>=<span>"3"</span><span>style</span>=<span>"background-color: #aaaaaa; text-align: center; font-weight: bold;"</span>>Exception trace<span><span>td</span>></span><span><span>tr</span>></span><span>tr</span>><span>td</span><span>style</span>=<span>"text-align: center; background: #cccccc; width:20px; font-weight: bold;"</span>>#<span><span>td</span>></span><span>td</span><span>style</span>=<span>"text-align: center; background: #cccccc; font-weight: bold;"</span>>Function<span><span>td</span>></span><span>td</span><span>style</span>=<span>"text-align: center; background: #cccccc; font-weight: bold;"</span>>Location<span><span>td</span>></span><span><span>tr</span>></span><span>tr</span>><span>td</span><span>style</span>=<span>"text-align: center;"</span>>0<span><span>td</span>></span><span>td</span>>Crypt_GPG_Engine->__construct(Array)<span><span>td</span>></span><span>td</span>>/usr/local/webdata/andy/fanli/citic/Crypt/GPGAbstract.php in /usr/local/webdata/andy/fanli/citic/Crypt/GPG/Engine.php on line 541</code>
命令行输出的错误信息:
<code>PHP Fatal error: Uncaught PEAR_Exception: gpg<span>-agent</span> binary <span>not</span> found<span>.</span><span>If</span> you are sure the gpg<span>-agent</span> is installed, please specify the location of the gpg<span>-agent</span> binary using the <span>'agent'</span> driver option<span>.</span><span>in</span> /usr/<span>local</span>/webdata/andy/fanli/citic/Crypt/GPGAbstract<span>.</span>php <span>on</span> line <span>278</span><span>#0</span> /usr/<span>local</span>/webdata/andy/fanli/citic/Crypt/GPGAbstract<span>.</span>php(<span>278</span>): Crypt_GPG_Engine<span>-></span>__construct(<span>Array</span>) <span>#1</span> /usr/<span>local</span>/webdata/andy/fanli/citic/gpg2<span>.</span>php(<span>9</span>): Crypt_GPGAbstract<span>-></span>__construct() <span>#2</span> {main} thrown <span>in</span> /usr/<span>local</span>/webdata/andy/fanli/citic/Crypt/GPG/Engine<span>.</span>php <span>on</span> line <span>601</span>Fatal error: Uncaught PEAR_Exception: gpg<span>-agent</span> binary <span>not</span> found<span>.</span><span>If</span> you are sure the gpg<span>-agent</span> is installed, please specify the location of the gpg<span>-agent</span> binary using the <span>'agent'</span> driver option<span>.</span><span>in</span> /usr/<span>local</span>/webdata/andy/fanli/citic/Crypt/GPGAbstract<span>.</span>php <span>on</span> line <span>278</span><span>#0</span> /usr/<span>local</span>/webdata/andy/fanli/citic/Crypt/GPGAbstract<span>.</span>php(<span>278</span>): Crypt_GPG_Engine<span>-></span>__construct(<span>Array</span>) <span>#1</span> /usr/<span>local</span>/webdata/andy/fanli/citic/gpg2<span>.</span>php(<span>9</span>): Crypt_GPGAbstract<span>-></span>__construct() <span>#2</span> {main} thrown <span>in</span> /usr/<span>local</span>/webdata/andy/fanli/citic/Crypt/GPG/Engine<span>.</span>php <span>on</span> line <span>601</span></code>
第一个browser中报的错我分析是权限问题,第二个在shell中运行才是其真正的问题所在,根据提示,使用brew安装gpg-agent。
之后我编写代码如下:
<code><span>require_once</span><span>'./Crypt/GPG.php'</span>; <span>$gpg</span> = <span>new</span> Crypt_GPG(); <span>$key</span> = getKey(); <span>$gpg</span>->addDecryptKey(<span>'zhangsanfeng'</span>,<span>'123456'</span>); <span>$encrypted</span> = file_get_contents(<span>'wait_for_decrpyt.txt.gpg'</span>); <span>$data</span> = <span>$gpg</span>->decrypt(<span>$encrypted</span>); <span>echo</span><span>'<pre class="brush:php;toolbar:false">'
终于解密成功!!!
版权声明:本文为博主原创文章,未经博主允许不得转载。
以上就介绍了调试Crypt_GPG的过程,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Apakah perbezaan antara Huawei GT3 Pro dan GT4?

Betulkan: Alat snipping tidak berfungsi dalam Windows 11

Cara Membetulkan Ralat Tidak Dapat Menyambung ke App Store pada iPhone

10 platform perdagangan cryptocurrency teratas, sepuluh aplikasi platform perdagangan mata wang yang disyorkan

Antara laman web sepuluh teratas yang manakah dalam bulatan mata wang?

Top 10 kedudukan perisian perdagangan mata wang digital yang mudah digunakan dan boleh dipercayai disyorkan 2025
