2013-03-02 21 views
45

Przeprowadziłem wyszukiwanie w Internecie, ale całkowicie rozczarowałem się wynikami. Przykładem jest przekierowanie wszystkich żądań do domeny domain.com do poddomeny www.domena.com.DNS przekieruj domenę.com do www.domain.com

Więc co mam:

  1. www.domain.com - główny domeny internetowej, wszystkie żądania klienta powinny być przekierowany tutaj
  2. domain.com - kolejny punkt wejścia strona osoby nie używające prefiksu www, wszystkie żądania powinny zostać przekierowane na stronę www.domain.com
  3. - alternatywny alias strony, wszystkie wnioski powinny być przekierowane do www.domain.com
  4. www.mydomain.com - dla osób korzystających z prefiksu www, wszystkie wnioski powinny być przekierowane do www.domain.com

Rozumiem, że jest to możliwe przy użyciu .htaccess i PHP. Ale chcę dowiedzieć się, jak można to zrobić tylko za pomocą DNS. Rozumiem również, że wynik zapytania DNS nie zmienia tego, co dzieje się w warstwie HTTP, więc pierwotnie wprowadzona nazwa domeny zawsze będzie tą, która zostanie wysłana do serwera WWW na hoście. Aby przepisać domenę.com na www.domain.com nadal będę potrzebował Apache mod_rewrite. Ale chcę wykonać główną część pracy z DNS (rekordy CNAME i A).

Głównym pytaniem jest zatem, co powinny zawierać rekordy CNAME i A w każdej z powyższych domen?

+3

W odpowiedzi na pytanie osób, które zamknęły pytanie: czy nie byłoby bardziej produktywne powiązanie tego pytania z odnośnym pytaniem w "odpowiedniej" witrynie (prawdopodobnie w witrynie serverfault)? I że DNS jest całkowicie "nie na temat", ponieważ twórca stron internetowych jest dość słabym argumentem. Naprawdę uważam, że jest za dużo chęci, by zamknąć pytania. Nawiasem mówiąc, był to najlepszy link do google. Odzwierciedla to słabo społeczność, która ma nadgorliwy brak kontroli nad najważniejszymi wynikami wyszukiwania. – Emmel

+1

Oto jestem programista sieciowy, zastanawiający się, jak przekierować połączenia bez poddomeny 'www', do tego. –

Odpowiedz

41

Możesz zrobić www.domain.com rekord A i wszystkie inne nazwy domenowe CNAME na www.domena.com. Ale to tylko "rozwiązuje" to, że jeśli adres IP www.domain.com się zmienia, nie musisz zmieniać innych wpisów DNS, ponieważ są one aliasami.

Tak więc na poziomie DNS nie ma sposobu na wymuszenie przekierowania. I nie bez powodu, ponieważ DNS jest używany dla więcej niż tylko HTTP. Na przykład, jeśli wszystkie żądania domeny domain.com będą przekierowywać na stronę www.domain.com, twoje adresy email zostaną zmienione na [email protected]

W celu przekierowania HTTP konieczne będzie użycie rozwiązania HTTP. Może to być na poziomie serwera WWW (mod_rewrite, w kodzie, javascript (ugh), itp.), Ale możesz również mieć proxy przed swoim serwerem, aby sobie z tym poradzić.

+0

Michaël, dziękuję bardzo! – Maksim

Powiązane problemy