Где я могу поставить "WSGIPassAuthorization On"?
Я пытаюсь увидеть заголовок авторизации в Django, используя mod_wsgi. Я прочитал, что Apache по умолчанию удерживает заголовок Authorization, я поместил << WSGIPassAuthorization On >> в мой блок Apache VirtualHost и.,, нада.
Как мне выяснить, где это поставить?
3 ответа
Решение
Поместите его в то же место, что и WSGIScriptAlias, и он должен работать нормально.
Подключитесь к EC2, перейдите в папку etc/httpd/conf.d и откройте файл wsgi.conf. Вставьте код в VirtualHost DOM:
WSGIPassAuthorization On
RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]
в папке
/etc/apache2/sites-available
откройте файл конфигурации, например
mySite.conf
а затем добавить
WSGIPassAuthorization On
к нему следующим образом:
...
</Files>
</Directory>
WSGIPassAuthorization On
WSGIScriptAlias / /home/X/wsgi.py
WSGIDaemonProcess sepanta_dev python-path=/home/X python-home=/home/X/venv
...