Error: Ассемблер, указанный в манифесте зависимостей приложений (WebApplication1.deps.json), не был найден: пакет: 'Microsoft.AspNetCore.Antiforgery', версия: '2.0.3' Путь: 'lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.dll'
Выше приведена ошибка ASP.Net которую приложение Core не может сообщить на centos 7
Решение 1 (Неуспешно)
Потому что только установленный . Runtime Net Core без установки ASP.NET Core runtime. Официальная ссылка на сайт:Вход по гиперссылке виден.
Попробуйте выполнить такую команду:
Затем попробуйте перезапустить программу .NET, но ошибка остаётся такой же, как выше.
Решение 2 (готово)
Проблема в том, что asp.net не выпускает все пакеты, которые нужны серверу, он думает, что целевой система их имеет, но на самом деле целевая система их не имеет. Решение:
Добавьте следующую строку в файл csjproj, как показано на рисунке ниже:
Упаковывайте и загружайте на наш сервер, перезапускайте приложение и обнаруживайте, что оно запускается нормально, как показано на рисунке ниже:
[root@VM_0_9_centos проект]# dotnet WebApplication1.dll
warn: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[35] XML-шифратор не настроен. Ключ {03f25bc0-bd97-441f-a013-72fbe8537c95} может сохраняться в незашифрованном виде.
warn: Microsoft.AspNetCore.Server.Kestrel[0] Невозможно привязать http://localhost:5000 на интерфейсе IPv6 loopback: «Ошибка -99 адрес EADDRNOTAVAIL недоступен». Среда хостинга: Продакшн Путь к корню содержимого: /root/project Теперь слушайте: http://localhost:5000 Подача заявки началась. Нажмите Ctrl+C, чтобы выключить.
Код интерфейса:
Мы обнаружили, что нельзя нормально получить доступ через внешний IP и 5000 портов, нам нужно установить nginx, получить обратный прокси, я установил nginx, инструкция по установке nginx такова:
nginx.conf настроен следующим образом:
Сейчас мы получили доступ через внешний IP и порт 80, и обнаружили, что доступ можно использовать обычно! Как показано ниже:
|