У меня есть приложение Google App Engine, работающее на моем голом домене, но я не могу найти никаких руководств о том, как перенаправить не голый (www) субдомен на голый домен.
Вроде только строят по-другому, голые до www.
Может ли кто-нибудь помочь, как я могу это сделать?
Я не могу ответить конкретно на облако приложений Google, но вот что происходит за кулисами.
Когда вы переходите на www.domain.com, происходит поиск DNS. Таким образом, вы должны сначала иметь DNS для www.domain.com, указывающий на тот же сервер, серверы (если вы выполняете циклическую балансировку нагрузки DNS) или IP-адрес балансировки нагрузки (если вы балансируете нагрузку где-то еще) как domain.com. Вы не сказали, но я полагаю, что это уже работает, и все, что вам нужно сделать, это «перенаправить».
Чтобы узнать, что клиент переходит на www.domain.com вместо domain.com, вам необходимо проверить заголовок Host в HTTP-запросе. Это уровень 7 традиционной модели OSI. Если в вашем облаке приложений есть устройство, такое как многоуровневый брандмауэр или обратный прокси-сервер перед сервером, вы можете прочитать этот заголовок там, а затем ответить клиенту с помощью 302 Location domain.com, который будет перенаправлять их по своему усмотрению. В противном случае вы также можете сделать это на своем веб-сервере. Псевдокод будет выглядеть так:
if Host equals www.domain.com
then generateHTTPResponse(302,Location=domain.com)