Error: En assembly specificeret i applikationsafhængighedsmanifestet (WebApplication1.deps.json) blev ikke fundet: pakke: 'Microsoft.AspNetCore.Antiforgery', version: '2.0.3' Sti: 'lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.dll'
Ovenfor er en fejl, som ASP.Net Core-applikation ikke kan rapportere på centos 7
Løsning 1 (Mislykkedes)
Fordi kun de installerede . Net Core runtime uden at installere ASP.NET Core runtime. Officielt webstedslink:Hyperlink-login er synlig.
Prøv at køre en kommando som denne:
Prøv derefter at genstarte .NET-programmet, men fejlen er stadig som ovenfor.
Løsning 2 (Færdig)
Problemet er, at asp.net ikke frigiver alle de pakker, som serveren har brug for; den tror, målsystemet har dem, men i virkeligheden har målsystemet ikke. Løsning:
Tilføj følgende linje til csjproj-filen, som vist i figuren nedenfor:
Pakk og upload til vores server, genstart applikationen, og find ud af, at den starter normalt, som vist i figuren nedenfor:
[root@VM_0_9_centos projekt]# dotnet WebApplication1.dll
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35] Ingen XML-kryptering konfigureret. Nøgle {03f25bc0-bd97-441f-a013-72fbe8537c95} kan lagres i ukrypteret form.
warn: Microsoft.AspNetCore.Server.Kestrel[0] Kan ikke binde til http://localhost:5000 på IPv6 loopback-interfacet: 'Fejl -99 EADDRNOTAVAIL adresse ikke tilgængelig'. Hosting-miljø: Produktion Indholdsrodsti: /root/project Nu lytter vi videre: http://localhost:5000 Ansøgningen startet. Tryk Ctrl+C for at lukke ned.
Interface-kode:
Vi finder ud af, at vi ikke kan få adgang normalt via den eksterne IP og 5000 porte, vi skal installere nginx, få en reverse proxy, nginx har jeg installeret, installationsvejledningen om nginx er som følger:
nginx.conf er konfigureret som følger:
På nuværende tidspunkt tilgår vi den via den eksterne IP og port 80, og fandt ud af, at den kan tilgås normalt! Som vist nedenfor:
|