Я пишу API с PHP ZF2 они используют HTTP авторизацию. Я получаю все заголовки HTTP с apache_request_headers() (также проверен с помощью $this->getRequest()->getHeaders()) .
Он работает на моей установленной языковой версии. Но на моем сервере заголовок авторизации HTTP недоступен. Мой инструмент Debug Browser показывает мне, что заголовок авторизации правильно отправляет.
Оба сервера работают с одним и тем же программным обеспечением: Ubuntu 14.04 с Apache2 (версия сервера: Apache / 2.4.7 (Ubuntu)).
apache2 модули apache2 (включено auth_basic ):
Есть ли настройка PHP ini чтобы разрешить заголовок авторизации?
Редактирование 2015-05-13:
$headers = apache_request_headers(); if (isset($headers['Authorization'])) { echo 'you are auth'; } else { echo 'there is no Authorization'; }
В моей языковой системе это возвращает «вы auth», на сервере «нет авторизации». Протестировано с помощью приложения Postman в браузере Chrome.
edit 2015-05-14: Я думаю, что это тема Apache2.
Как включить заголовок авторизации в Apache2?
SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
в .htaccess решает проблему.
Но я не знаю, почему это не нужно в моей языковой системе.