Не могу правильно настроить apache
У меня были некоторые проблемы, я использую ЭТУ библиотеку oauth, и сначала я подумал, что в ней есть ошибка, так как я мог правильно получить свои токены, но при использовании токенов я получил ошибку 401, после некоторых экспериментов я обнаружил, что она имеет какое-то отношение к Apache. Если я запускаю php-сервер из командной строки, он работает правильно, поэтому сейчас я не могу понять, что может сделать apache, чтобы скрипты работали неправильно.
У меня XAMPP установлен на машине с Windows. (Apache/2.4.27 (Win32) OpenSSL/1.0.2l PHP/7.1.9)
У меня виртуальный хост настроен в Apache, вот так.
<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/slim3-simple-rest-skeleton-master/public"
ServerName TestSite
</VirtualHost>
и мой файл etc хостов добавил строку 127.0.0.1 TestSite
с этой конфигурацией я могу сделать запрос на http://testsite/oauth/token и получить свой токен доступа, так что здесь все работает просто отлично.
но когда я захожу на http://testsite/books, я получаю пустую страницу с 401 неавторизованным заголовком.
с другой стороны, если я пойду в свою папку slim3-simple-rest-skeleton-master
и запустить это php -S 0.0.0.0:8888 -t public/
я могу получить свой токен по адресу http://localhost:8888/oauth/token, как и раньше, и когда я доберусь до http://localhost:8888/books, он будет работать правильно.
Я пытался выяснить, в чем отличие, но мне не повезло, я напечатал в обоих сценариях phpinfo и не смог обнаружить каких-либо существенных различий, есть идеи о том, что я могу искать?
что я могу попытаться войти, чтобы увидеть, что происходит по-другому?
1 ответ
Проблема была на apache, удаляющем авторизацию Заголовка, добавляя
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]
заставляет apache добавить заголовок и работает правильно.