Domeny niestandardowe dla web aplikacji

Adres każdej aplikacji webowej zostaje automatycznie wzbogacony o końcówkę azurewebsites.net. Na etapie tworzenia projektu, gdy nie jest on jeszcze upubliczniony, nie stanowi to żadnego problemu. Gdy już zbliżamy się do wdrożenia trzeba powoli pomyśleć o jakiejś ładnie wyglądającej i chwytliwej domenie. Domeny niestandardowe możemy zakupić bezpośrednio za pośrednictwem Azure’a. Mamy również możliwość podpiąć swojej własne domeny zakupione u zewnętrznych usługodawców. Na początek trochę teorii o samym DNS.

Domain Name System (DNS)

DNS to rozbudowany system komputerowy przechowujący informacje na temat wszystkich zarejestrowanych domen oraz odpowiadających nim adresom IP. Dzięki niemu możesz posługiwać się w sieci znacznie przyjaźniejszymi nazwami – mowa tu właśnie o domenach, które tłumaczone są na zrozumiałe dla komputera adresy IP. Wpisanie w przeglądarce domeny bujacwoblokach.pl jest o wiele prostsze (a przede wszystkim łatwiejsze do zapamiętania) niż adresu IP o postaci: 193.239.42.15.

Wszystkie ustawienia dotyczące domeny zapisywane są za pomocą różnego rodzaju rekordów. Na potrzeby dzisiejszego artykułu obchodzą nas tylko dwa typy rekordów: A (Address record) oraz CNAME (Alias record). Rekord adresu odwzorowuje domenę na 32-bitowy adres IP – w tym przypadku będzie to adres IP web aplikacji. Rekord CNAME mapuje nazwę domeny na inną nazwę domenową – jest to nic innego jak alias dla rekordu adresu. W naszym przypadku będzie to domyślna domena z sufiksem azurewebsites.net.

Jak skonfigurować domeny niestandardowe

Po wybraniu web aplikacji, w sekcji ustawień, wybierz opcję Domeny niestandardowe (Custom domains) – funkcjonalność ta jest niedostępna w ramach darmowych App Service Plan’ów (minimalny wymagany plan to Shared). W tym miejscu możesz skorzystać z opcji zakupu domeny za pośrednictwem Microsoft Azure – wystarczy kliknąć w opcję kup domenę – lub podpięcia swojej, zakupionej u innego usługodawcy, domeny. Pierwsza opcja – zakup za pomocą Azure – ogranicza się do podania samej nazwy domeny oraz danych kontaktowych, niezbędnych do poprawnej rejestracji. Można tutaj również uaktywnić automatyczne, coroczne odnawianie domeny. Więcej szczegółów na temat zakupu za pośrednictwem chmury znajdziesz w dokumentacji MSDN pod tym adresem.

Własne domeny niestandardowe za pomocą portalu Azure
Własne domeny niestandardowe za pomocą portalu Azure

Podpinamy własne domeny

Przejdźmy teraz przez proces dodania domeny, pochodzącej od dowolnego usługodawcy (home.pl, domeny.pl itp.). Zaczynamy od konfiguracji DNS. Zakładam, że usługodawca, u którego zakupiłeś swoją domenę umożliwia Ci nawigację po jakimkolwiek panelu administracyjnym – co raczej powinno być oczywiste, ale różnie to bywa. Ja posłużę się chyba najbardziej znanym portalem DirectAdmin, który powinien być dostępny u większości polskich dostawców. Na początku wybierz domenę z listy wszystkich dostępnych – chyba, że masz tylko jedną, to zostanie ona automatycznie wybrana za Ciebie, a następnie kliknij w opcję Zarządzanie DNSami, przedstawioną na poniższym screenie:

Zarządzanie DNSami wewnątrz portalu Direct Admin
Zarządzanie DNSami wewnątrz portalu Direct Admin

Teraz przejdziemy do dodawania nowych rekordów. W formatce Dodaj rekord dns uzupełnij rekord adresu A podając jako nazwę @ – jest to odpowiednik domeny głównej, natomiast jako wartość adres IP znajdujący się na portalu w sekcji domeny niestandardowe – tzw. zewnętrzny adres IP. Kliknij w przycisk Dodaj, znajdujący się po prawej stronie. Teraz należy dodać dwa rekordy aliasu CNAME. W polu nazwa wpisz awverify, a w polu wartość nazwę aktualnej domeny web aplikacji – tą zakończoną azurewebsites.com – z prefiksem awerify. Ponadto za domeną dodaj kropkę. Ponownie kliknij w przycisk Dodaj. Przedrostek awverify wywodzi się z Azure Websites Veryfications, odpowiada za weryfikacją czy dana domena na pewno należy do nas – jest to warunek konieczny, gdy dodajemy nowy rekord adresu. Na koniec dodajemy jeszcze jeden rekord aliasu, tym razem jako nazwę podaj www, jako wartość domenę web aplikacji zakończoną kropką. Powinno wyglądać to podobnie jak na załączonym obrazku:

Dodatkowe rekordy adresu A i aliasów CNAME dla DNS
Dodatkowe rekordy adresu A i aliasów CNAME dla DNS

Nowo dodane rekordy powinny być widoczne w tabeli wszystkich wprowadzonych, znajdującej się u samej góry strony. Możesz dodatkowo nadpisać wartość TTL (Time to live) określającą czas przechowywania rekordów przez serwery DNS. Ja ustawiam ją na 5 minut – co sprowadza się do wpisania liczby 300 – czas ten wyrażany jest w sekundach.

Wróćmy teraz do portalu. Odwiedź zakładkę Domeny niestandardowe, a następnie kliknij Dodaj nazwę hosta (Add hostname). Podaj nazwę domeny z przedrostkiem www, a następnie kliknij w przycisk weryfikuj. Jeśli wszystko zostało wykonane poprawie weryfikacja zakończy się powodzeniem. Teraz możesz dodać nową nazwę hosta. W tym momencie wpisując nazwę podpiętej domeny w przeglądarce internetowej powinieneś zobaczyć swoją web aplikację 🙂

Proponuję w konfiguracji DNS (po stronie usługodawcy) dodać jeszcze jeden wpis. Mianowicie rekord typu TXT mapujący @ na adres aplikacji znajdującej się na Azure, odpowiadający wartości CNAME dla www wprowadzony poprzednio. W tym momencie możesz dodać kolejną domenę, taka samą jak przed chwilą, lecz bez przedrostka www. W ten sam sposób można mapować również subdomeny.

Przypięcie nowych nazw hostów do web aplikacji możliwe jest również za pośrednictwem PowerShella:

AzureCLI: