наконец я получил его на работу:
прежде всего, я изменил команду gpg для расшифровки с выводом парольной фразы в stdin:
$passphrase = utf8_decode('mypassphrase');
$encrypted = 'fullsystempathtogpgfile.gpg';
"echo '$passphrase' | /usr/local/bin/gpg -v -v --batch --passphrase-fd 0 --no-default-keyring $encrypted";
перед выполнением с shell_exec мне нужно былоизмените homedir для gpg:
до того, как он был установлен с:
putenv("GNUPGHOME=/var/www/.gnupg");
, но очевидно, что пользователь php (в моем случае "ftpadmin", обнаруженный с "whoami") не имеет разрешениячтобы получить доступ к этому каталогу, я скопировал папку .gpg в мою новую созданную пользовательскую папку php: / home / ftpadmin (с 777 разрешениями) и изменил GNUPGHOME:
putenv("GNUPGHOME=/home/ftpadmin/.gnupg");
, теперь я могу расшифроватьgpg файлы с php.Может быть, вы могли бы найти помощь для вашей аналогичной проблемы.Еще раз спасибо за каждый ответ.