PHP-FPM: Authorization header not found in Xsolla webhook request
CyberDemonLord opened this issue · 0 comments
CyberDemonLord commented
Если на сервере включено PHP-FPM, то подсказка из хелпа
RewriteEngine On
RewriteCond %{HTTP:Authorization} ^(.+)$
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
не работает.
Потому что Authorization теперь выглядит как
[REDIRECT_HTTP_AUTHORIZATION] => Signature 89b146d1f356337ac3b5813a1e0fed76fb7fd34b
и, конечно же, в headers не попадает. В webhook проверку авторизации не проходит.
Я не гуру в php, но вот этот костыль работает (WebhookAuthentificator.php)
public function authenticateSignature(WebhookRequest $webhookRequest)
{
$headers = [];
if (isset($_SERVER["REDIRECT_HTTP_AUTHORIZATION"]))
$headers = array('authorization' => $_SERVER["REDIRECT_HTTP_AUTHORIZATION"]);
else
$headers = $webhookRequest->getHeaders();
...