Моя команда OpenSSL не работает, и я запускаю ее через функцию exec() php.Команда OpenSSL не работает
Ошибка, которая выводится, равна «1».
OpenSSL включен и работает.
Вот команда:
$openssl_cmd = "($OPENSSL smime -sign -signer $MY_CERT_FILE -inkey $MY_KEY_FILE " .
"-outform der -nodetach -binary <<_EOF_\n$data\n_EOF_\n) | " .
"$OPENSSL smime -encrypt -des3 -binary -outform pem $PAYPAL_CERT_FILE";
exec($openssl_cmd, $output, $error);
Я бегу последнюю версию XAMPP и работает на Windows, 10.
Спасибо заранее!
EDIT:
Вот полная команда, когда выдается в виде штампа ($ openssl_cmd); в PHP:
(C:/xampp/apache/bin/openssl.exe smime -sign -signer C:\xampp\darkrpuploaded.net\paypal\pubcert.pem -inkey C:\xampp\darkrpuploaded.net\paypal\prvkey.pem -outform der -nodetach -binary <<_EOF_ cmd=_xclick amount=25.00 item_number=76561198093993814 discount_rate=0 item_name=Silver VIP :: DarkRPUploaded notify_url=https://www.darkrpuploaded.net/paypal/ipn [email protected] cert_id=D3K4PQNGPCHFS currency_code=USD no_shipping=1 bn=domain.PHP_EWP2 _EOF_) | C:/xampp/apache/bin/openssl.exe smime -encrypt -des3 -binary -outform pem C:\xampp\darkrpuploaded.net\paypal\paypal_cert.pem
EDIT: Я использую https://www.stellarwebsolutions.com/en/articles/paypal_button_encryption_php.php в качестве руководства.
это работает, когда вы запустите его из командной строки с Windows? – Clay
Когда я делаю это из командной строки Windows, он выдает команду вместе с: << в это время было неожиданным. – Anonymous
Ваша команда, вероятно, будет работать на Linux ... Я не верю, что вы можете это сделать в Windows, хотя я думаю, что вы можете делать трубы с помощью Windows PowerShell – Clay