Wdrażanie witryny przy użyciu programu Visual Studio (VB)
Program Visual Studio zawiera narzędzia do wdrażania witryny internetowej. Dowiedz się więcej o tych narzędziach w tym samouczku.
Wprowadzenie
W poprzednim samouczku przedstawiono sposób wdrażania prostej aplikacji internetowej ASP.NET u dostawcy hosta internetowego. W szczególności w samouczku pokazano, jak używać klienta FTP, takiego jak FileZilla, do transferu niezbędnych plików ze środowiska deweloperskiego do środowiska produkcyjnego. Program Visual Studio oferuje również wbudowane narzędzia ułatwiające wdrażanie dostawcy hostów internetowych. Ten samouczek analizuje dwa z tych narzędzi: narzędzie do kopiowania witryny sieci Web, w którym można przenosić pliki do i z zdalnego serwera internetowego przy użyciu rozszerzeń FTP lub FrontPage Server; i narzędzie Publikuj, które kopiuje całą witrynę internetową do określonej lokalizacji.
Uwaga
Innym narzędziem związanym z wdrażaniem oferowanym przez program Visual Studio jest dodatek Projektów konfiguracji sieci Web . Projekty konfiguracji sieci Web pakuje zawartość i informacje o konfiguracji witryny sieci Web do pojedynczego pliku MSI. Ta opcja jest najbardziej przydatna w przypadku witryn internetowych wdrożonych w intranecie lub firm, które sprzedają wstępnie spakowaną aplikację internetową instalowaną na własnych serwerach sieci Web. Projekty wdrażania sieci Web Add-In to program Visual Studio Add-In, który ułatwia określanie różnic konfiguracji między kompilacjami w środowiskach deweloperskich i środowiskach produkcyjnych. Projekty konfiguracji sieci Web nie zostały omówione w tej serii samouczków; Projekty wdrażania sieci Web zostały podsumowane w samouczku Common Configuration Differences Between Development and Production (Typowe różnice konfiguracji między programowaniem i produkcją ).
Wdrażanie witryny przy użyciu narzędzia do kopiowania witryny sieci Web
Narzędzie kopiowania witryny sieci Web programu Visual Studio jest podobne do autonomicznego klienta FTP. W skrócie narzędzie Copy Web Site (Kopiowanie witryny sieci Web) umożliwia nawiązywanie połączenia z zdalną witryną internetową za pośrednictwem rozszerzeń FTP lub FrontPage Server. Podobnie jak w przypadku interfejsu użytkownika usługi FileZilla, interfejs użytkownika kopiowania witryny sieci Web składa się z dwóch okienek: lewe okienko wyświetla listę plików lokalnych, a okienko po prawej stronie wyświetla te pliki na serwerze docelowym.
Uwaga
Narzędzie kopiuj witrynę sieci Web jest dostępne tylko dla projektów witryn sieci Web. Program Visual Studio oferuje to narzędzie podczas pracy z projektem aplikacji internetowej.
Przyjrzyjmy się użyciu narzędzia kopiuj witrynę sieci Web, aby opublikować aplikację Book Review w środowisku produkcyjnym. Ponieważ narzędzie Kopiuj witrynę sieci Web działa tylko z projektami korzystającymi z modelu projektu witryny sieci Web, możemy sprawdzić tylko za pomocą tego narzędzia w projekcie BookReviewsWSP. Otwórz ten projekt.
Uruchom projekt narzędzia kopiuj witrynę sieci Web, klikając ikonę Kopiuj witrynę sieci Web w Eksplorator rozwiązań (ta ikona jest okrągła na rysunku 1). Alternatywnie możesz wybrać opcję Kopiuj witrynę internetową z menu Witryna internetowa. Dowolne podejście uruchamia interfejs użytkownika kopiowania witryny sieci Web pokazany na rysunku 1; wypełniane jest tylko lewe okienko na rysunku 1, ponieważ nie nawiązaliśmy jeszcze połączenia z serwerem zdalnym.
Rysunek 1. Interfejs użytkownika narzędzia kopiowania witryny sieci Web jest podzielony na dwa okienka (kliknij, aby wyświetlić obraz pełnowymiarowy)
Aby wdrożyć naszą witrynę, musimy najpierw nawiązać połączenie z dostawcą hosta sieci Web. Kliknij przycisk Połącz w górnej części interfejsu użytkownika Kopiuj witrynę sieci Web. Spowoduje to wyświetlenie okna dialogowego Otwieranie witryny sieci Web pokazanego na rysunku 2.
Możesz połączyć się z docelową witryną internetową, wybierając jedną z czterech opcji po lewej stronie:
- System plików — wybierz tę opcję, aby wdrożyć lokację w folderze lub udziale sieciowym dostępnym z komputera.
- Lokalne usługi IIS — użyj tej opcji, aby wdrożyć witrynę na serwerze sieci Web usług IIS zainstalowanym na komputerze.
- Witryna FTP — nawiązywanie połączenia ze zdalną witryną internetową przy użyciu protokołu FTP.
- Lokacja zdalna — połącz się ze zdalną witryną internetową przy użyciu rozszerzeń serwera programu FrontPage.
Większość dostawców hostów sieci Web obsługuje protokół FTP, ale mniej oferuje obsługę rozszerzenia serwera FrontPage. Z tego powodu wybrano opcję Witryna FTP, a następnie wprowadzono informacje o połączeniu, jak pokazano na rysunku 2.
Rysunek 2. Określ docelową witrynę internetową (kliknij, aby wyświetlić obraz pełnowymiarowy)
Po nawiązaniu połączenia narzędzie Kopiuj witrynę sieci Web ładuje pliki w lokacji zdalnej w okienku po prawej stronie i wskazuje stan każdego pliku: Nowy, Usunięty, Zmieniony lub Bez zmian. Plik można skopiować z lokacji lokalnej do lokacji zdalnej lub odwrotnie.
Dodajmy nową stronę do projektu BookReviewsWSP, a następnie wdróżmy ją, aby zobaczyć działanie narzędzia Kopiuj witrynę sieci Web. Utwórz nową stronę ASP.NET w programie Visual Studio w katalogu głównym o nazwie Privacy.aspx
. Aby strona korzystała ze strony Site.master
wzorcowej i do tej strony dodaj zasady zachowania poufności w witrynie. Rysunek 3 przedstawia program Visual Studio po utworzeniu tej strony.
Rysunek 3. Dodawanie nowej strony o nazwie Privacy.aspx
do folderu głównego witryny sieci Web (kliknij, aby wyświetlić obraz pełnowymiarowy)
Następnie wróć do interfejsu użytkownika kopiowania witryny sieci Web. Jak pokazano na rysunku 4, okienko po lewej stronie zawiera teraz nowe pliki — Policy.aspx
i Policy.aspx.vb
. Co więcej, te pliki są oznaczone ikoną strzałki i stanem Nowy, wskazując, że istnieją w lokacji lokalnej, ale nie w lokacji zdalnej.
Rysunek 4. Narzędzie kopiowania witryny sieci Web zawiera nową Privacy.aspx
stronę w okienku po lewej stronie (kliknij, aby wyświetlić obraz pełnowymiarowy)
Aby wdrożyć nowe pliki, wybierz je, a następnie kliknij ikonę strzałki, aby przenieść je do lokacji zdalnej. Po zakończeniu Policy.aspx
transferu pliki i Policy.aspx.vb
istnieją zarówno w lokacjach lokalnych, jak i zdalnych ze stanem Bez zmian.
Oprócz wyświetlania listy nowych plików narzędzie Kopiuj witrynę sieci Web wyróżnia wszystkie pliki, które różnią się między lokacjami lokalnymi i zdalnymi. Aby zobaczyć to działanie, wróć do Privacy.aspx
strony i dodaj kilka kolejnych słów do zasad ochrony prywatności. Zapisz stronę, a następnie wróć do narzędzia Kopiuj witrynę sieci Web. Jak pokazano na rysunku 5, Privacy.aspx
strona w okienku po lewej stronie ma stan Zmieniono wskazujący, że nie jest zsynchronizowana z witryną zdalną.
Rysunek 5. Narzędzie kopiowania witryny sieci Web wskazuje, że Privacy.aspx
strona została zmieniona (kliknij, aby wyświetlić obraz pełnowymiarowy)
Narzędzie kopiuj witrynę sieci Web wskazuje również, czy plik został usunięty od ostatniej operacji kopiowania. Usuń element Privacy.aspx
z projektu lokalnego i odśwież narzędzie kopiuj witrynę sieci Web. Pliki Privacy.aspx
i Privacy.aspx.vb
pozostają wyświetlane w okienku po lewej stronie, ale mają stan Usunięty wskazujący, że zostały usunięte od ostatniej operacji kopiowania.
Publikowanie aplikacji internetowej
Innym sposobem wdrożenia aplikacji internetowej z poziomu programu Visual Studio jest użycie opcji Publikuj, która jest dostępna za pośrednictwem menu Kompilacja. Opcja Publikuj jawnie skompiluje aplikację, a następnie kopiuje wszystkie niezbędne pliki do określonej lokacji zdalnej. Jak zobaczymy wkrótce, opcja Publikuj jest bardziej tępa niż narzędzie Kopiuj witrynę sieci Web. Podczas gdy narzędzie Kopiuj witrynę sieci Web umożliwia zbadanie plików w witrynach lokalnych i zdalnych oraz umożliwia przekazywanie lub pobieranie poszczególnych plików zgodnie z potrzebami, opcja Publikuj wdraża całą aplikację internetową.
Oprócz kopiowania wszystkich wymaganych plików do określonej lokacji zdalnej opcja Publikuj również jawnie kompiluje aplikację. Biorąc pod uwagę, że projekty aplikacji internetowych muszą być jawnie skompilowane, nie powinno być zaskoczeniem, że opcja Publikuj jest dostępna dla projektów aplikacji internetowych. Co może być nieco zaskakujące, jest to, że opcja Publikuj jest również dostępna dla projektów witryn sieci Web. Jak wspomniano w samouczku Określanie plików, które należy wdrożyć , projekty witryn sieci Web można jawnie skompilować za pomocą procesu określanego jako wstępna kompilacja. Ten samouczek koncentruje się na korzystaniu z opcji Publikuj w projektach aplikacji internetowych; w przyszłym samouczku zapoznamy się ze wstępną kompilacją. W tym momencie wrócimy do korzystania z opcji Publikuj w projektach witryny sieci Web.
Uwaga
Chociaż opcja Publikuj jest dostępna w programie Visual Studio dla projektów witryn sieci Web i projektów aplikacji internetowych, deweloper programu Visual Web oferuje tylko opcję Publikuj dla projektów aplikacji internetowych.
Przyjrzyjmy się wdrożeniu aplikacji Przeglądy książek przy użyciu opcji Publikuj. Zacznij od otwarcia elementu BookReviewsWAP (projektu aplikacji internetowej) w programie Visual Studio. W menu Publikowanie wybierz projekt Build BookReviewsWAP. Spowoduje to wyświetlenie okna dialogowego z monitem o lokalizację docelową między innymi opcjami konfiguracji (zobacz Rysunek 6). Podobnie jak w przypadku narzędzia do kopiowania witryny sieci Web można wprowadzić lokalizację wskazującą folder lokalny, lokalną witrynę internetową w usługach IIS, zdalną witrynę internetową, która obsługuje rozszerzenia serwera FrontPage lub adres serwera FTP. Przed opublikowaniem można wybrać, czy zastąpić pliki na zdalnym serwerze sieci Web wdrożonym plikiem, czy usunąć całą zawartość w witrynie zdalnej. Możesz również określić, czy chcesz skopiować:
- Tylko pliki w projekcie potrzebne do uruchomienia aplikacji, która pomija niepotrzebny kod źródłowy i pliki związane z projektem.
- Wszystkie pliki projektu, które zawierają pliki kodu źródłowego i pliki projektu programu Visual Studio, takie jak plik rozwiązania.
- Wszystkie pliki w folderze projektu źródłowego, które kopiują wszystkie pliki w folderze projektu źródłowego niezależnie od tego, czy są one uwzględnione w projekcie.
Istnieje również możliwość przekazania zawartości App_Data
folderu.
Rysunek 6. Określ docelową witrynę internetową (kliknij, aby wyświetlić obraz o pełnym rozmiarze)
W przypadku aplikacji Book Review witryna zdalna zawiera pliki wdrożone podczas kopiowania projektu BookReviewsWSP za pośrednictwem narzędzia kopiuj witrynę sieci Web. W związku z tym użyjemy opcji Publikuj, usuwając całą istniejącą zawartość. Ponadto skopiujmy tylko niezbędne pliki, a nie zaśmiecanie środowiska produkcyjnego niepotrzebnymi plikami źródłowymi i plikami projektu. Po określeniu tych opcji kliknij przycisk Publikuj. W ciągu najbliższych kilku sekund program Visual Studio wdroży niezbędne pliki w lokacji docelowej, wyświetlając postęp w oknie Dane wyjściowe.
Rysunek 7 przedstawia pliki w witrynie FTP po zakończeniu operacji publikowania. Należy pamiętać, że zostały przekazane tylko strony znaczników oraz niezbędne pliki obsługi serwera i klienta.
Rysunek 7. Tylko wymagane pliki zostały opublikowane w środowisku produkcyjnym (kliknij, aby wyświetlić obraz o pełnym rozmiarze)
Opcja Publikuj jest mniej szczegółowym narzędziem niż narzędzie do kopiowania witryny sieci Web. Podczas gdy narzędzie Kopiuj witrynę sieci Web umożliwia inspekcję plików w lokalnych i zdalnych witrynach i sprawdzenie, jak się różnią, opcja Publikuj nie udostępnia takiego interfejsu. Ponadto narzędzie do kopiowania witryny sieci Web umożliwia wprowadzanie jednorazowych zmian, przekazywanie lub usuwanie pojedynczych plików. Opcja Publikuj nie zezwala na taką precyzyjną kontrolkę; Zamiast tego publikuje całą aplikację. To zachowanie ma swoje zalety i wady. Po stronie plusa wiesz, kiedy używasz opcji Publikuj, nie zapomnisz o przekazaniu ważnego pliku. Należy jednak rozważyć, co się stanie, jeśli wprowadzono niewielką zmianę w bardzo dużej witrynie internetowej — z opcją Publikuj nie można zaktualizować tej strony lub dwóch, które zostały zmodyfikowane, ale zamiast tego należy poczekać, aż program Visual Studio wdroży całą witrynę.
Nie jest niczym niezwykłym, że istnieją pewne pliki, których zawartość różni się między środowiskami produkcyjnymi i deweloperskimi. Kluczowym przykładem jest plik konfiguracji aplikacji: Web.config
. Ponieważ opcja Publikuj w sposób ślepy kopiuje pliki aplikacji internetowej, zastępuje dostosowane pliki konfiguracji środowiska produkcyjnego wersją w środowisku deweloperskim. W kolejnym samouczku bardziej szczegółowo omówiono ten temat i przedstawiono wskazówki dotyczące wdrażania aplikacji internetowej, gdy istnieją takie różnice.
Podsumowanie
Wdrożenie witryny internetowej obejmuje skopiowanie niezbędnych plików ze środowiska deweloperskiego do środowiska produkcyjnego. W poprzednim samouczku pokazano, jak transferować pliki przy użyciu klienta FTP, takiego jak FileZilla. W tym samouczku przeanalizowano dwa narzędzia wdrażania w programie Visual Studio: narzędzie Kopiuj witrynę sieci Web i opcję Publikuj. Narzędzie do kopiowania witryny sieci Web jest podobne do klienta FTP w systemie, w ramach którego ma dwa okienka interfejsu z listą plików na komputerze lokalnym i określonym komputerze zdalnym, który ułatwia przekazywanie lub pobieranie plików między dwoma komputerami. Opcja Publikuj jest bardziej tępym narzędziem, które jawnie kompiluje projekt, a następnie wdraża całą aplikację w określonym miejscu docelowym.
Szczęśliwe programowanie!
Dalsze informacje
Aby uzyskać więcej informacji na temat tematów omówionych w tym samouczku, zapoznaj się z następującymi zasobami: