У меня есть сервер Ubuntu, работающий NGINX в качестве обратного прокси-сервера для ASP. NET Core 2.2 веб-API, и у меня возникают проблемы с диагностикой ошибки сервера 500, которую я продолжаю получать по запросам к API.
Я просмотрел все журналы, которые я вижу в / var / logs, журналы приложений, которые настроены на трассировку, и журналы ошибок nginx, которые настроены на отладку. Однако нет никакой подсказки о том, где находится ошибка.
Все запросы к API не выполняются с тем же ответом 500, кроме одного, который является конечной точкой токена аутентификации IdentityServer, которая работает. Он работает в том же API.
Я подозреваю, что проблема может быть на ранней стадии в конвейере запросов, прежде чем он перейдет в действия моего контроллера.
На сервере есть SQL База данных сервера сервер, но он не доступен для конкретных запросов, которые я пытаюсь, поэтому я исключаю это.
Мой вопрос: где еще я могу посмотреть, что происходит? Это должно быть что-то, связанное с приложением, так как это единственное, что изменилось, и другой сайт, работающий за NGINX на той же машине, работает нормально, поэтому я не виню конфигурацию NGINX.
Когда я возвращаю весь сервер в резервную копию до того, как развертывание было выполнено, все работает нормально. Развертывание кода приложения что-то нарушает, но я просто не могу понять, что и почему.
Ответ об ошибке 500 очень прост без обычных заголовков. NGINX настроен на добавление гораздо большего количества заголовков ответов, чем это.
HTTP/1.1 500 Internal Server Error
Server: nginx
Date: Thu, 05 Mar 2020 21:12:54 GMT
Content-Length: 0
Connection: keep-alive
Keep-Alive: timeout=30