Django Token Authentication не работает, когда я получаю доступ к серверу через доменное имя
У меня есть приложение Django с аутентификацией токенами, и я обслуживаю его через Apache2. Когда я делаю требуемые аутентификацией запросы к серверу с доменным именем, он возвращает ошибку 401 Unauthorized HTTP. Когда я делаю это с ip:port, он возвращает успех. На сервер отправляется тот же токен. Что может быть причиной этого? Может ли сервер apache быть связан с этим?
Вот мой конфиг apache:
<VirtualHost *:80>
ServerAdmin ...
ServerName semanticspace.io
ServerAlias www.semanticspace.io
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Alias /static /home/cuneyttyler/knowledgebase/knowledge-base-django/static
<Directory /home/cuneyttyler/knowledgebase/knowledge-base-django/static>
Require all granted
</Directory>
Alias /media /home/cuneyttyler/knowledgebase/knowledge-base-django/media
<Directory /home/cuneyttlyer/knowledgebase/knowledge-base-django/media>
Require all granted
</Directory>
<Directory /home/cuneyttyler/knowledgebase/knowledge-base-django/knowledgebase_python>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
WSGIDaemonProcess knowledge-base-django python-path=/home/cuneyttyler/knowledgebase/knowledge-base-django python-home=/home/cuneyttyler/knowledgebase/knowledge-bas>
WSGIProcessGroup knowledge-base-django
WSGIScriptAlias / /home/cuneyttyler/knowledgebase/knowledge-base-django/knowledgebase_python/wsgi.py
</VirtualHost>
Apache не передает заголовок Authorization
по умолчанию, вам нужно добавить следующее в конфигурацию VirtualHost и перезапустить Apache
WSGIPassAuthorization On