Error: Nie znaleziono asembla określonego w manifestie zależności aplikacji (WebApplication1.deps.json): pakiet: 'Microsoft.AspNetCore.Antiforgery', wersja: '2.0.3' Ścieżka: 'lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.dll'
Powyżej znajduje się błąd, którego ASP.Net aplikacja Core nie może zgłosić na CentOS 7
Rozwiązanie 1 (Niepowodzenie)
Ponieważ tylko zainstalowane . Net Core runtime bez instalowania ASP.NET Core runtime. Oficjalny link do strony internetowej:Logowanie do linku jest widoczne.
Spróbuj uruchomić polecenie takie jak to:
Następnie spróbuj zrestartować program .NET, ale błąd nadal jest taki jak powyżej.
Rozwiązanie 2 (Gotowe)
Problem polega na tym, że asp.net nie udostępnia wszystkich pakietów, których serwer potrzebuje, myśli, że system docelowy je ma, ale w rzeczywistości system docelowy tego nie ma. Rozwiązanie:
Dodaj następujący wers do pliku csjproj, jak pokazano na poniższym rysunku:
Spakuj i przesłaj na nasz serwer, zrestartuj aplikację i okazuje się, że uruchamia się normalnie, jak pokazano na poniższym rysunku:
[root@VM_0_9_centos project]# dotnet WebApplication1.dll
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35] Nie skonfigurowano żadnego szyfratora XML. Klucz {03f25bc0-bd97-441f-a013-72fbe8537c95} może być przechowywany w pamięci w formie nieszyfrowanej.
warn: Microsoft.AspNetCore.Server.Kestrel[0] Nie można powiązać http://localhost:5000 na interfejsie pętli IPv6: 'Błąd -99 EADDRNOTAVAIL adres nie dostępny'. Środowisko hostingowe: Produkcja Ścieżka główna treści: /root/project Teraz słucham: http://localhost:5000 Aplikacja rozpoczęła się. Naciśnij Ctrl+C, aby wyłączyć.
Kod interfejsu:
Okazało się, że nie możemy normalnie uzyskać dostępu przez zewnętrzne IP i porty 5000, musimy zainstalować nginx, zainstalować reverse proxy, nginx, który mam zainstalowany, a samouczek instalacyjny dotyczący nginx wygląda następująco:
nginx.conf jest skonfigurowany następująco:
W tym momencie mamy dostęp do niego przez zewnętrzny adres IP i port 80 i okazało się, że można do niego uzyskać normalny dostęp! Jak pokazano poniżej:
|