2013-08-01 13 views
29

Chcę skierować niektóre z moich domen na moją domenę podstawową hostowaną w witrynie Windows Azure.Przekierowanie 301 witryny Azure - gdzie ją umieścić?

(Dla tych, którzy znajdują pracę z CNAME i DNS trochę „mglisty” (jak ja) Idę na układ szczegóły.)

Mam domenę www.myDomain.com poprawnie rozwiązywania .

Teraz chcę podkreślić www.myOtherDomain.com to www.myDomain.com

W moim rejestratora Stworzyłem CNAME wskazać
www.myOtherDomain.com to myInternalAzureSite.azurewebsite.net
a następnie pomyślnie skonfigurowany go w w narzędziu Menedżer domeny Azure WWW.

Teraz, kiedy wchodzę www.myOtherDomain.com w przeglądarce uzyskać właściwą stronę internetową www.myDomain.com jednak adres w przeglądarce nie jest jeszcze www.myOtherDomain.comwww.myDomain.com jako pożądane.

Rozumiem dwóch najbardziej pożądanych sposobów osiągnięcia tego celu są albo:

  1. Forward myOtherDomain.com (który kosztuje $ w niektórych rejestratorów)
  2. Czy 301 stałe przekierowanie

Jeśli mam wszystko to poprawne, znalazłem wiele sugestii dotyczących JAK zrobić przekierowanie 301, jednak nie mogę wymyślić GDZIE do wszystkich y umieścić przekierowanie?

Odpowiedz

51

Witryny Windows Azure działają w IIS. Możesz użyć przepisywania adresu URL, aby utworzyć reguły przepisywania jednego adresu URL na inny.

Instrukcje:

  1. stworzyć stronę internetową w systemie Windows Azure.

  2. W sekcji Skala wybierz tryb witryny sieciowej Udostępniony lub Standardowy i zapisz zmiany.

  3. W sekcji Konfiguruj w grupie nazw domen dodaj starą nazwę domeny (lub nazwy) i nową nazwę domeny i zapisz zmiany.

  4. W swoim rejestratorze domen lub dostawcy DNS dla starej domeny i nowej domeny zmień rekordy DNS, aby wskazywały nową witrynę Windows Azure. Użyj rekordu "CNAME (Alias)" i wskaż go w domenie witryny w systemie Windows Azure, na przykład: "mywebsite.azurewebsites.net".

  5. Prześlij zawartość swojej nowej witryny do systemu Windows Azure.

  6. W korzenia nowej strony internetowej, utwórz plik o nazwie Web.config z zawartością tak:

    <?xml version="1.0" encoding="utf-8" ?> 
    <configuration> 
        <system.webServer> 
         <rewrite> 
          <rules> 
           <rule name="Redirect old-domain to new-domain" stopProcessing="true"> 
            <match url=".*" /> 
            <conditions> 
             <add input="{HTTP_HOST}" pattern="^www.old-domain.com$" /> 
            </conditions> 
            <action type="Redirect" url="http://www.new-domain.com/{R:0}" redirectType="Permanent" /> 
           </rule>    
          </rules> 
         </rewrite> 
        </system.webServer> 
    </configuration> 
    
  7. upewnić się, że każdy wniosek do „http://www.old-domain.com/path?query” otrzyma „301 Przeniesiono na stałe” odpowiedź z nagłówek lokalizacji dla "http://www.new-domain.com/path?query".

Dokumentacja dostępna pod adresem Using the URL Rewrite Module.

Przykłady można znaleźć na stronie Redirect to new domain after rebranding with IIS Url Rewrite Module i IIS URL Rewrite – Redirect multiple domain names to one.

+0

Dzięki @Fernando, w moim przypadku myOtherDomain.com nigdy miał miejsce, to tylko .net, .org, misspellings.com itp. strony głównej. – Richard

+0

Nie ma problemu, dostosowałem swoją odpowiedź do tej sytuacji. W takim przypadku należy utworzyć stronę internetową dla tej innej domeny i umieścić zasady przekierowania na tej stronie, przekierowując do domeny docelowej. –

+0

Fernando, przepraszam za moją ignorancję, ale już jestem. Czy (lub powinna) strona docelowa, do której zostanie przekierowana domena, jest stroną docelową? Na przykład myOldDomain.com wskazuje na newDomain.com i wykonuje przekierowanie perm w głównym pliku web.config witryny newDomain.com? – Richard

4

Można również zrobić przekierowanie umieszczając ten kod w pliku web.config pod configuration węzła:

<configuration> 
    <location path="oldpage1.php"> 
    <system.webServer> 
     <httpRedirect enabled="true" destination="http://domain.com/newpage1" httpResponseStatus="Permanent" /> 
    </system.webServer> 
    </location> 
    <location path="oldpage2.php"> 
    <system.webServer> 
     <httpRedirect enabled="true" destination="http://domain.com/newpage2" httpResponseStatus="Permanent" /> 
    </system.webServer> 
    </location> 
</configuration> 
+0

Nie działa dla mnie, pokazuje stronę HTTP 404 dla mojej starej strony, która już nie istnieje. Masz pojęcie, co może być? – rodrigorf

+1

Czy jesteś pewien, że podałeś właściwą lokalizację we właściwości "ścieżka" znacznika lokalizacji? – Celt

+0

Popełniłem błąd, próbowałem użyć tego kodu, aby przekierować wszystkie żądania określonego katalogu, a nie pojedynczy plik. Rozwiązałem mój problem, zmieniając plik web.config za pomocą znacznika httRedirect w system.webserver. – rodrigorf

Powiązane problemy