Windows Azure: как сделать 301 не-www URL для www для домена - PullRequest
10 голосов
/ 19 июля 2011

Я недавно развернул приложение Windows Azure и настроил DNS своего домена через портал DreamHost. Теперь мой сайт доступен по http://www.coziie.com,, но не по адресу без www.

Я прочитал в одной из статей, что я должен добавить запись A в настройках DNS и указать виртуальный IP-адрес Windows Azure. Как получить виртуальный IP-адрес моего развертывания Windows Azure?

Или есть ли лучший способ 301 перенаправить все не-www URL-адреса на www?

РАЗРЕШЕНО : мне удалось решить эту проблему, просто настроив параметры перенаправления веб-сайта в настройках DNS DreamHost. Простое перенаправление 301 http://coziie.com на www.coziie.com решило проблему.

Ответы [ 3 ]

15 голосов
/ 19 июля 2011

Вы говорите здесь о двух отдельных вопросах.

Первый - настроить запись DNS, чтобы ваш некононизированный URL работал. Второй - перенаправить URL-адрес, если к нему обращается сайт.

update Я удалил предыдущий совет для CNAME, поскольку раньше я не понимал, что в качестве корневого домена нельзя установить запись CNAME. Похоже, что с ограничениями IP-адресов Azure вам нужно будет указать запись корневого домена на non-azure, хостинг asp.net, а затем поместить перенаправление 301 (например, далее по моему ответу), чтобы переслать его в Azure. домен (домен www).

Если у вас есть http://coziie.com/, указывающий на ваш сайт и обслуживающий страницу, тогда самое время это исправить, потому что Google может запутаться, подумайте о двух разных сайтах и ​​затем уменьшите рейтинг страницы между ними.

Хитрость в том, чтобы настроить перенаправление 301. Я считаю, что инструмент переписывания URL-адресов изначально был дополнением для IIS7, но теперь включен в него? Возможно, вам придется сделать быстрый поиск по этому вопросу.

В любом случае, вот как я делаю это на сервере IIS7 с установленным официальным расширением перезаписи URL (это идет в вашем файле web.config):

  <system.webServer>
    <rewrite>
      <rules>
        <clear/>
        <rule name="WWW Rewrite" enabled="true">
          <match url="(.*)"/>
          <conditions>
            <add input="{HTTP_HOST}" negate="true" pattern="^www\."/>
          </conditions>
          <action type="Redirect" url="http://www.{HTTP_HOST}/{R:0}" appendQueryString="true" redirectType="Permanent"/>
        </rule>
      </rules>
    </rewrite>
  </system.webServer>

Intellisense будет жаловаться, что это не распознанный элемент, но это просто косметическая проблема при редактировании файла.

0 голосов
/ 22 июля 2011

CNAMES предназначены только для поддоменов, например, sub.example.com или www.example.com. Другими словами, вы не можете зарегистрировать CNAME для example.com.Если ваш провайдер домена поддерживает его, вы можете создать перенаправление с example.com на www.example.com, а затем создать запись CNAME для www.example.com, CNAME сопоставит www.example.com с example.cloudapp.net.У моего провайдера доменов есть веб-консоль, где я могу сделать это легко, возможно, у вас тоже?

0 голосов
/ 19 июля 2011

VIP-адрес легко получить, просматривая портал (читая подробности развертывания) или просто пингуя свой адрес .cloudapp.net.Вы можете установить запись A, но вы должны быть готовы обновить ее в случае удаления своего развертывания.После удаления развертывания VIP-адрес будет возвращен в пул, и есть большая гарантия того, что вы получите новый VIP-адрес при следующем развертывании.

Вы можете сохранить свой VIP-адрес, используяФункция обновления в отличие от новых развертываний.У этого есть некоторые ограничения, но он работает для обновлений, которые, в общем, не изменяют определение сервиса.

Мы привыкли говорить, что VIP-адрес не гарантирован, даже если вы сделали обновление, но MS пришлавернуться с более сильным языком о гарантиях. Смотрите здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...