Próbuję przekierować domenę na inną przez DNS.
Wiem, że użycie IN CNAME jest możliwe.
www.proof.com IN CNAME www.proof-two.com.
Potrzebuję przekierowania ze ścieżką. Kiedy ktoś pisze www.proof.com
, powinno to zająćwww.proof-two.com/path/index.htm
Wiem, że można to zrobić przy użyciu funkcji serwera WWW, ale potrzebuję przekierowania DNS.
czy to możliwe?
Odpowiedzi:
Nie, to, o co prosisz, nie jest możliwe. DNS to system rozpoznawania nazw i nic nie wie o HTTP.
źródło
jeśli używasz AWS, przekierowanie, takie jak
można skonfigurować w następujący sposób:
nie jest czystym rozwiązaniem DNS, ale działa;)
Należy jednak pamiętać, że przekierowanie pomija wszystkie parametry adresu URL, np .: ...? Param1 = wartość1 i param2 = wartość2
źródło
Zdaję sobie sprawę, że to stary wątek, ale FWIW, na wypadek, gdyby ktoś inny szukał sposobu, aby to zrobić.
Chociaż dns nie rozumie ścieżki adresu URL, rozpoznaje subdomeny, więc zamiast:
www.proof.com W CNAME www.proof-two.com/path/index.htm
Możesz użyć:
www.proof.com W CNAME proof.proof-two.com
następnie przejdź do miejsca, w którym hostujesz, proof-two.com i ustaw go jako point proof.proof-two.com na www.proof-two.com/path/index.htm.
~ zawsze jest więcej niż jeden sposób na oskórowanie kota
źródło
proof-two.com
serwerów WWW. Czasami duże firmy (i biurokracja) sprawiają, że wszystko jest o wiele bardziej skomplikowane, niż mogłoby być.Mam osobisty projekt, który może pomóc w rozwiązaniu tego problemu. Jest to rozwiązanie typu open source do przekierowywania, które umożliwia przekierowanie domeny po prostu zmieniając ustawienia DNS. Link do projektu: https://redirect.center/ .
Aby przekierować www.proof.com do www.proof-two.com zachowując parametry adresu URL, po prostu ustaw swój wpis DNS www na proof.com:
www.proof.com W CNAME www.proof-two.com.opts-uri.redirect.center.
źródło
Naprawdę jest to łatwe dzięki redirect.center
Jeśli chcesz utworzyć CNAME jako:
www.proof.com W CNAME www.proof-two.com/path/index.htm
używając redirect.center, CNAME wygląda w trybie kanonicznym, jak:
www.proof.com W CNAME www.proof-two.com.opts-slash.path.opts-slash.index.htm.redirect.center.
Teraz, jeśli chcesz przekierować do witryny https, możesz dodać tę opcję:
www.proof.com W CNAME www.proof-two.com.opts-slash.path.opts-slash.index.htm.opts-https.redirect.center.
Teraz możesz utworzyć CNAME w trybie kanonicznym z ukośnikiem na swojej stronie przeznaczenia.
źródło
Edytować
Wygląda na to, że to mój dostawca (OVH) zezwala na tego rodzaju przekierowania w ramach swojej infrastruktury.
Zobacz: https://docs.ovh.com/gb/en/domains/redirect-domain-name/
Zachowuję odpowiedź poniżej ze względu na archiwizację, ale nie dostarcza ona żadnych znaczących informacji.
Oryginalna odpowiedź
Zrobiłem to używając rekordu TXT.
Aby przekierować
foo.bar.com
dofoo2.bar.com/path
, po prostu dodajfoo IN TXT "1|foo2.bar.com/path"
swojąbar.com
strefę DNS.Zachowuje również ścieżki i parametry adresów URL. Więc jeśli spróbujesz uzyskać dostęp
foo.bar.com/hello?foo=bar
, zostaniesz przekierowany dofoo2.bar.com/path/hello?foo=bar
.źródło
Aby odpowiedzieć na pierwotne pytanie, nie, to, czego chcesz, nie jest możliwe przy użyciu samego DNS (jak wszyscy stwierdzili). Oprócz wszystkiego, o czym już wspomniano, inną opcją jest użycie usługi przekierowania adresu URL. Te typy usług umożliwiają skonfigurowanie wielu różnych typów przekierowań adresów URL w zależności od potrzeb. Na przykład:
Usługą , która to robi, jest EasyRedir . Pełne ujawnienie: opracowałem EasyRedir. Z pewnością są tam jednak inne opcje, więc zachęcam do rozejrzenia się.
źródło
DNS nie przekierowuje ścieżki adresu URL, więc nie będzie to możliwe.
Dodawanie
przekieruje dostęp do www.proof.com do www.proof-two.com, gdzie będziesz musiał użyć konfiguracji serwera WWW, aby skierować użytkowników do odpowiedniej strony.
źródło
Moje rozwiązanie tego problemu było dość proste i nieskomplikowane. Wszystko, czego potrzebujesz, to serwer IIS działający w domenie.
Skonfiguruj CNAME w DNS, aby wskazywał serwer IIS, używając nazw hostów w usługach IIS do rozpoznawania kilku witryn na jednym serwerze IIS. Używam tego samego serwera IIS do wydzielenia kilku subdomen do witryn zewnętrznych.
Następnie w przekierowaniu konfiguracji IIS dla tej witryny, aby przejść do Twojej zewnętrznej witryny / ścieżki, w moim przypadku był to nasz hostowany katalog, do którego powinien przejść katalog catalog.ourdomain.com. Stąd wszystkie poprawki są wykonywane w usługach IIS. Pamiętaj, aby włączyć uwierzytelnianie anonimowe, aby ruch nie był blokowany.
źródło
Przypuszczam, że masz taki scenariusz: masz unikalny serwer WWW obsługujący różne strony internetowe, z których każda ma być prezentowana przez oddzielną domenę:
dlatego strona page1.html powinna być obsługiwana przez www.customer1.com i tak dalej.
utwórz subdomenę na serwerze DNS przyklad.com (Twój serwer WWW):
w ustawieniach serwera wirtualnego Apache zmapuj subdomenę do katalogu zawierającego witrynę internetową Twojego klienta nr 1, na przykład:
w tym momencie powinieneś być w stanie przejść do witryny klienta1, przechodząc do:
Teraz możesz korzystać z: www.customer1.com.
źródło
Powiązana praca zakończyła się poniższym:
Problem:
http://a.com/p1/p2.html powinno dziś przejść do http://B.com/p1/p2.html
, ale później, po skonfigurowaniu ręcznie / automatycznie, to samo
http://a.com/p1 /p2.html powinien przejść do http://C.com/p1/p2.html
Odpowiedzi:
Chociaż może wykonać wiele przekierowań, zawsze wyświetla adres IP DNS nie rozumie ścieżki ani części protokołu adresu URL, rozumie tylko część domeny, to znaczy tylko a.com jest konwertowana na adres IP, więc kiedy trafisz http: //a.com/p1/p2.html można przekonwertować na http://152.132.121.11/p1/p2.html, jeśli źle skonfigurujesz DNS, otrzymasz 152.132.121.11 (nie http: //152.132. 121.11 / p1 / p2.html ), więc wystąpiłby błąd 400s (400, 403 itd.)
Wszystkie metody, takie jak GET, POST, mogą działać, z nagłówkami i treścią, ale w grę wchodzi serwer WWW, może to być punkt awarii, więc skalowalność i dostępność będą kluczowe
Jest to możliwe dzięki Amazon Certification Manager, niestandardowym domenom AWS Gateway i Route53, zwróć uwagę na ograniczenie us-east-1 w ACM
Mam nadzieję, że to komuś pomoże
źródło
Chociaż, jak już prawie wszyscy stwierdzili - nie można używać samego DNS. Jako obejście sugerowałbym wypróbowanie NGINX ( http://nginx.org/en/docs/http/request_processing.html ).
TL; DR - W NGINX można utworzyć wiele serwerów wirtualnych, które mogą przekierować Twoje żądanie na podstawie nazwy serwera.
Dawny. http://first.my-server.com przekierowuj do miejsca A, a http://second.my-server.com przekierowuj do miejsca B, podczas gdy oba współdzielą jeden fizyczny serwer.
źródło
Możesz użyć mod rewrite htaccess, przepisać do podfolderu, jeśli użytkownik żąda jednej określonej domeny, a nie drugiej.
źródło
Oczywiście możliwe jest przekierowanie z następującą sztuczką:
Utwórz nową standardową strefę podstawową Nazwij ją taką samą jak fikcyjny adres URL, do którego chcesz przekierować Upewnij się, że ta fikcyjna nazwa różni się od dowolnej nazwy AD DNS usługi AD Utwórz rekord z następującymi wpisami:
puste ....................... A ......................... ... adres IP-2
www ......................... A ....................... ..... adres IP-2
Zasadniczo mamy tu do czynienia z przekierowaniem. Prawidłowy adres URL zostanie rozpoznany na podstawie istniejącej podstawowej strefy DNS DNS. Fikcyjny adres URL zostanie przekierowany na adres ip-addr-2. Co ważne, nazwa tego wpisu jest pusta, więc spadnie do następnego wpisu w rekordzie i przekieruje do ip-addr-2
źródło
Wszyscy już to powiedzieli, a ja chcę tylko dać ci inną opcję usługi, która może ci pomóc. www.301redirect.it to bezpłatna usługa, która może przekierować domenę (z symbolem wieloznacznym) na dowolny docelowy adres URL.
Chcę również dodać ujawnienie: jestem programistą stojącym za tą usługą i są tam inne opcje.
źródło