Перенаправить все URL-адреса с префиксом «www» для приложения с субдоменами

Я работаю над многопользовательским приложением Django, в котором каждый арендатор получает отдельный поддомен, например tenant1.example.com, tenant2.example.com и т. д.

Насколько я знаю, обычно префикс www в url не используется в поддоменах. Но я узнал, что многие мои пользователи на самом деле добавляют «www» перед любым URL-адресом. Многие пользователи Tenant1 вводят URL-адрес как www.tenant1.example.com, что означает, что запрос не приходит на реальный сайт.

Итак, я думаю о перенаправлении всех URL-адресов с префиксом www на соответствующий URL-адрес субдомена. Я не уверен, что это лучший способ. Я могу написать промежуточное программное обеспечение, которое может выполнять перенаправление, но я не чувствую, что это хорошо.

Я искал, но не могу найти решение, связанное с поддоменом.

Я использую Gunicorn и в настоящее время размещаюсь на Heroku. Я не могу найти какую-либо конфигурацию сервера, связанную с вышеуказанной проблемой.

Как я могу решить вышеуказанную проблему? Я думаю, что настроить сервер было бы лучше всего, как это сделать, если это возможно?


person chhantyal    schedule 24.10.2013    source источник
comment
Вы используете gunicorn за чем-то, например, за nginx?   -  person Christian Ternus    schedule 25.10.2013
comment
Я размещаюсь на Heroku - насколько я знаю, Heroku использует nginx для обратного прокси? Изменить: Heroku не использует nginx для развертывания Python devcenter.heroku.com/articles/   -  person chhantyal    schedule 25.10.2013


Ответы (1)


Вы можете сделать это с помощью настроек nginx или apache. Не на самом Джанго.

http://www.faultserver.com/q/answers-nginx-forward-all-subdomains-145141.html

person cem    schedule 10.06.2014
comment
Я упомянул, что не использую nginx или Apache. - person chhantyal; 11.06.2014
comment
Я никогда не использовал Heroku, но он также должен поддерживать перенаправление поддоменов. - person cem; 13.06.2014