Pobieranie ustawień publikowania z usług IIS i importowanie do programu Visual Studio
Możesz użyć narzędzia Publikuj, aby zaimportować ustawienia publikowania, a następnie wdrożyć aplikację. W tym artykule używamy ustawień publikowania dla usług IIS.
Te kroki dotyczą aplikacji internetowych ASP.NET i ASP.NET Core.
Notatka
Plik ustawień publikowania (*.publishsettings) różni się od profilu publikowania (*.pubxml). Plik ustawień publikowania jest tworzony w usługach IIS, a następnie można go zaimportować do programu Visual Studio. Program Visual Studio tworzy profil publikowania.
Warunki wstępne
program Visual Studio zainstalowany ze środowiskiem programowania ASP.NET i tworzenia aplikacji internetowych. Jeśli masz już zainstalowany program Visual Studio:
- Zainstaluj najnowsze aktualizacje w programie Visual Studio, wybierając pozycję Pomoc>Sprawdź dostępność aktualizacji.
- Dodaj obciążenie, wybierając opcję Tools>Get Tools and Features.
Na serwerze musi być uruchomiony system Windows Server 2012 lub nowszy, a rola serwera sieci Web usług IIS musi być poprawnie zainstalowana (co jest wymagane do wygenerowania pliku ustawień publikowania (
.publishsettings
)). Na serwerze musi być również zainstalowany program ASP.NET 4.5 lub ASP.NET Core. Kroki opisane w tym samouczku zostały przetestowane w systemie Windows Server 2022.Aby skonfigurować ASP.NET Core, zobacz Wdróż ASP.NET Core w systemie Windows za pomocą usług IIS. W przypadku ASP.NET Core upewnij się, że została skonfigurowana pula aplikacji do używania opcji Bez Zarządzanego Kodu, jak opisano w artykule.
Aby skonfigurować ASP.NET 4.5, zobacz IIS 8.0 Using ASP.NET 3.5 and ASP.NET 4.5(Używanie ASP.NET 3.5 i ASP.NET 4.5).
Notatka
Usługi IIS w systemie Windows nie obsługują generowania ustawień publikowania. Nadal można jednak publikować w usługach IIS przy użyciu narzędzia Publikuj w programie Visual Studio.
Instalowanie i konfigurowanie narzędzia Web Deploy w systemie Windows Server
Narzędzie Web Deploy udostępnia dodatkowe funkcje konfiguracji, które umożliwiają tworzenie pliku ustawień publikowania z poziomu interfejsu użytkownika.
Notatka
Instalator platformy internetowej osiągnął koniec życia w dniu 7/1/22. Aby uzyskać więcej informacji, zobacz Instalator Platformy Internetowej - zakończenie wsparcia i stopniowe wycofywanie kanału informacyjnego produktu/aplikacji. Możesz bezpośrednio zainstalować narzędzie Web Deploy 4.0, aby utworzyć plik ustawień publikowania.
Jeśli nie zainstalowano jeszcze skryptów i narzędzi zarządzania usługami IIS, zainstaluj je teraz.
Przejdź do Wybierz role serwera>serwera sieci Web (IIS)>Narzędzia do zarządzania, a następnie wybierz rolę Skrypty i narzędzia zarządzania usługami IIS, kliknij Dalej, a następnie zainstaluj rolę.
Skrypty i narzędzia są wymagane do włączenia generowania pliku ustawień publikowania.
Upewnij się również, że zainstalowano usługę zarządzania oraz konsolę do zarządzania usługami IIS (mogą one być już zainstalowane).
W systemie Windows Server pobierz narzędzie Web Deploy 4.0.
Uruchom program instalacyjny Web Deploy i upewnij się, że wybrano opcję Pełna instalacja zamiast typowej instalacji.
Po zakończeniu instalacji uzyskasz składniki potrzebne do wygenerowania pliku ustawień publikowania. (Jeśli zamiast tego wybierzesz Niestandardowy, możesz wyświetlić listę składników, jak przedstawiono na poniższej ilustracji).
zrzut ekranu
(Opcjonalnie) Sprawdź, czy narzędzie Web Deploy działa prawidłowo, otwierając Panel sterowania > System i Zabezpieczenia > Narzędzia administracyjne > Services, a następnie upewnij się, że:
jest uruchomiona usługa agenta wdrażania sieci Web (nazwa usługi różni się w starszych wersjach).
Usługa zarządzania siecią Web jest uruchomiona.
Jeśli jedna z usług agenta nie jest uruchomiona, uruchom ponownie usługę Web Deployment Agent Service.
Jeśli usługa agenta wdrażania sieci Web nie jest w ogóle obecna, przejdź do Panel sterowania > Programy i funkcje > Odinstaluj program, znajdź Microsoft Web Deploy <w wersji>. Wybierz opcję Zmień instalację i upewnij się, że wybrano Zostanie zainstalowany na lokalnym dysku twardym dla składników Web Deploy. Wykonaj kroki instalacji zmiany.
Tworzenie pliku ustawień publikowania w usługach IIS w systemie Windows Server
Zamknij i otwórz ponownie konsolę zarządzania usługami IIS, aby wyświetlić zaktualizowane opcje konfiguracji w interfejsie użytkownika.
W IIS kliknij prawym przyciskiem myszy domyślną witrynę sieci Web, wybierz opcję Wdróż>Konfiguruj publikowanie w Web Deploy.
Jeśli nie widzisz menu Wdróż, zobacz poprzednią sekcję, aby sprawdzić, czy narzędzie Web Deploy jest uruchomione.
W oknie dialogowym Konfigurowanie publikowania Web Deploy przejrzyj ustawienia.
Kliknij pozycję Setup.
W panelu Wyniki dane wyjściowe pokazują, że prawa dostępu są przyznawane określonemu użytkownikowi i że plik z .publishsettings rozszerzenie pliku został wygenerowany w lokalizacji wyświetlanej w oknie dialogowym.
<?xml version="1.0" encoding="utf-8"?> <publishData> <publishProfile publishUrl="https://myhostname:8172/msdeploy.axd" msdeploySite="Default Web Site" destinationAppUrl="http://myhostname:80/" profileName="Default Settings" publishMethod="MSDeploy" userName="myhostname\myusername" /> </publishData>
W zależności od konfiguracji systemu Windows Server i usług IIS w pliku XML są widoczne różne wartości. Poniżej przedstawiono kilka szczegółów dotyczących widocznych wartości:
Plik msdeploy.axd, do których odwołuje się atrybut
publishUrl
, jest dynamicznie generowanym plikiem programu obsługi HTTP dla narzędzia Web Deploy. (W celach testowychhttp://myhostname:8172
również zazwyczaj działa.)Port
publishUrl
jest ustawiony na port 8172, który jest domyślnym portem web deploy.Port
destinationAppUrl
jest ustawiony na port 80, który jest domyślny dla usług IIS.Jeśli w kolejnych krokach nie możesz nawiązać połączenia z hostem zdalnym z programu Visual Studio przy użyciu nazwy hosta, przetestuj adres IP serwera zamiast nazwy hosta.
Notatka
Jeśli publikujesz na IIS uruchomionym na maszynie wirtualnej platformy Azure, musisz otworzyć port przychodzący dla programu Web Deploy i IIS w grupie zabezpieczeń sieciowych. Aby uzyskać szczegółowe informacje, zapoznaj się z Otwieranie portów na maszynie wirtualnej.
Skopiuj ten plik na komputer, na którym jest uruchomiony program Visual Studio.
Importowanie ustawień publikowania w programie Visual Studio i wdrażanie
Na komputerze, na którym jest otwarty projekt ASP.NET w programie Visual Studio, kliknij prawym przyciskiem myszy projekt w Eksploratorze rozwiązań i wybierz Opublikuj.
Jeśli wcześniej skonfigurowałeś jakieś profile publikowania, pojawi się okienko Publikowanie. Kliknij Nowy lub Utwórz nowy profil.
Wybierz opcję importowania profilu.
W oknie dialogowym Publikowanie
kliknij pozycję Importuj profil .Przejdź do lokalizacji pliku ustawień publikowania utworzonego w poprzedniej sekcji.
W oknie dialogowym importowania plików ustawień publikowania przejdź do i wybierz profil utworzony w poprzedniej sekcji, a następnie kliknij przycisk Otwórz.
Kliknij pozycję Zakończ, aby zapisać profil publikowania, a następnie kliknij pozycję Opublikuj.
Program Visual Studio rozpoczyna proces wdrażania, a okno Dane wyjściowe zawiera postęp i wyniki.
Jeśli wystąpią błędy wdrażania, kliknij opcję Więcej akcji>Edytuj, aby edytować ustawienia. Zmodyfikuj ustawienia i kliknij pozycję Zweryfikuj, aby przetestować nowe ustawienia. Jeśli nazwa hosta nie zostanie znaleziona, spróbuj użyć adresu IP zamiast nazwy hosta w polach serwera
i docelowego adresu URL .
Po pomyślnym wdrożeniu aplikacji powinna zostać uruchomiona automatycznie.
Typowe problemy
Najpierw sprawdź okno Dane wyjściowe w programie Visual Studio, aby uzyskać informacje o stanie, i sprawdź komunikaty o błędach. W dodatku:
- Jeśli nie możesz nawiązać połączenia z hostem przy użyciu nazwy hosta, spróbuj zamiast tego użyć adresu IP.
- Upewnij się, że wymagane porty są otwarte na serwerze zdalnym.
- W przypadku ASP.NET Core w usługach IIS należy upewnić się, że pole Pula aplikacji dla DefaultAppPool ma ustawioną wartość Brak zarządzanego kodu.
- Sprawdź, czy wersja ASP.NET używana w aplikacji jest taka sama jak wersja zainstalowana na serwerze. Dla aplikacji możesz wyświetlić i ustawić wersję na stronie właściwości . Aby ustawić aplikację na inną wersję, należy ją zainstalować.
- Jeśli aplikacja próbowała się otworzyć, ale zobaczysz ostrzeżenie o certyfikacie, wybierz opcję, aby zaufać witrynie. Jeśli ostrzeżenie zostało już zamknięte, możesz edytować plik *.pubxml w projekcie i dodać następujący element:
<AllowUntrustedCertificate>true</AllowUntrustedCertificate>
. To ustawienie jest przeznaczone tylko do testowania! - Jeśli aplikacja nie rozpoczyna się od programu Visual Studio, uruchom aplikację w usługach IIS, aby sprawdzić, czy została wdrożona prawidłowo.