Azure의 Asp.Net Core 2.0은 502.5가 됩니다.
저는 Asp로 개발한 작은 웹 앱을 가지고 있습니다.Net Core 1.1은 Azure에 도입되어 정상적으로 동작합니다.ASP를 사용하기 위해 프로젝트를 마이그레이션했습니다.Net Core 2.0을 Azure에 도입하려고 했습니다.도입은 정상적으로 이루어졌지만 사이트를 열면 502.5 에러가 발생합니다.Azure 로그 스트림을 확인하면 다음 오류가 나타납니다.
이 오류는 CGI 응용 프로그램이 유효한 HTTP 헤더 세트를 반환하지 않거나 프록시 또는 게이트웨이가 부모 게이트웨이에 요구를 송신할 수 없었던 경우에 발생합니다.CGI 문제가 아닌 경우 네트워크 트레이스를 가져오거나 프록시 서버 관리자에게 문의해야 할 수 있습니다.
같은 코드를 가진 개발 기계에서 잘 작동한다는 것은 말할 필요도 없습니다.Azure에서 데이터베이스 작성을 비활성화했지만 엔티티 프레임워크 Core 2.0도 사용하고 있습니다(원인이 아닌지 확인하기 위해).
참고로 1.1에서 2.0으로 이행한 방법은 타깃 프레임워크 설정을 "netcoreapp2"로 변경하는 것입니다.NuGet 패키지 "Microsoft"를 사용합니다.AspNetCore.만약을 위해 게시 프로필도 삭제하고 다시 만들었습니다.
Asp가 가능할까?Net Core 2.0은 아직 Azure에서 사용할 수 없습니까?전 아스프에 처음 와봐요.Net Core이기 때문에 Azure에서는 언제 새로운 릴리즈가 나올지 모릅니다.
편집
natemcmaster의 제안대로 디버깅콘솔을 통해 dot net CLI를 사용하여 앱을 실행하려고 하면 다음과 같은 문제가 발생하였습니다.
처리되지 않은 예외:시스템.IO.FileLoadException:Microsoft 파일 또는 어셈블리를 로드할 수 없습니다.AspNetCore.호스팅.추상화, 버전=2.0.0, 문화=중립, 공개키토큰=adb9793829ddae60' 입니다.찾은 어셈블리의 매니페스트 정의가 어셈블리 참조와 일치하지 않습니다(HRESULT: 0x80131040의 예외).
바탕화면에 DLL을 다운로드하여 Dot Net Peak 버전을 확인했는데, 실제로 Visual Studio에서 프로젝트를 만들고 직접 게시했는데 DLL이 1.1.2입니다. Visual Studio에 문제가 있습니까?아니면 Nuget?
처음에는 웹 어플리케이션의 "wwwroot" 폴더에 모든 DLL을 배포하는 .net core 1.1을 사용하고 있었기 때문에 문제가 발생했습니다.단, asp.net core 2.0에서는 DLL이 글로벌스토어에서 픽업되기 때문에 이 기능은 실행되지 않습니다.그러나 Visual Studio는 게시 전에 대상 폴더를 정리하지 않기 때문에 1.1 DLL이 wwwroot에 있는 상황이 발생했기 때문에 웹 사이트에서 스토어 폴더에 있는 2.0 DLL 대신 이러한 DLL을 선택하고 있었습니다.
상세한 것에 대하여는, https://github.com/Azure/app-service-announcements-discussions/issues/2#issuecomment-313816550 를 참조해 주세요.
다른 사람들은 왜 이런 일이 일어나는지 이유를 설명했다.이 문제에 대한 또 다른, 거의 틀림없이 쉬운 해결책을 제시하겠습니다.
Azure에 이미 있는 파일을 삭제하도록 설정을 변경하기만 하면 됩니다(아래 참조).
합니다.D:\home\LogFiles.
로그에 무엇이 잘못되었는지 표시되지 않을 수 있습니다.더 자세히 조사하는 또 다른 좋은 방법은 ASP를 실행하는 것입니다.디버깅 콘솔의 NET Core 앱.공유 프레임워크 버전이 없거나 다른 부팅 오류가 있는 경우 디버깅콘솔에서 더 잘 볼 수 있습니다.
에 가다
https://(your web site name here).scm.azurewebsites.net/DebugConsole/
의 는 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★D:\home\site\wwwroot 할 수 을 사용하다
cd D:\home\site\wwwroot
dotnet MyWebApp.dll
앱이 되지 않으면 앱이 시작되지 않는지 하십시오.D:\home\site\wwwroot\web.configASP를 사용하도록 설정되어 있습니다.NET 코어 모듈https://learn.microsoft.com/en-us/aspnet/core/hosting/aspnet-core-module
제 경우 Project Name에 공백이 있기 때문에 발생한 것입니다.
- = > 502.5의 스페이스를 간단하게 추가할 수 있습니다.
- 공간을 절약하고 => Go Go를 게시합니다.
믿기 어렵지만 나는 그것을 위와 쉽게 복제하고 있다.
또한 @Sam의 답변에 따라 "Remove Additional Files at Destination"을 사용합니다.
https://github.com/Azure/app-service-announcements/issues/14 를 참조해 주세요."롤아웃은 6월 30일 금요일까지 완료될 예정입니다."
저 같은 경우에는 앱서비스가 2.0.0-preview2-006497을 지원하는데 2.0.0-preview3-006890을 설치해서 문제가 발생하였습니다. 덧붙였습니다.global.json2, 그 에 동작했습니다.
이것이 언젠가 도움이 될지는 모르겠지만, 저 같은 경우에는 Microsoft 를 사용하고 있었습니다.AspNetCore.모두 2.0.5
Microsoft 로의 다운로드.AspNetCore.모든 2.0.3이 문제를 해결합니다.
이 문제는 사용하시는 버전의 ASP에서 발생합니다.서버에서 NET Core와 일치할 수 없습니다.
가장 간단한 해결책은 Azure가 프레임워크 버전과 일치하는지 여부는 중요하지 않으므로 앱의 설정을 변경하여 자체 완결 상태로 배포하는 것입니다.또한 Azure에 이미 있는 파일을 삭제하여 @Sam에서 설명한 바와 같이 업그레이드 시 문제가 발생하지 않도록 합니다.
언급URL : https://stackoverflow.com/questions/44550096/asp-net-core-2-0-on-azure-results-in-a-502-5
'programing' 카테고리의 다른 글
| Bash에서 문자열을 대문자에서 소문자로 변환하려면 어떻게 해야 합니까? (0) | 2023.04.22 |
|---|---|
| 폼 인증Sign Out()은 사용자를 로그아웃하지 않습니다. (0) | 2023.04.22 |
| openpyxl에서 시트 이름 가져오기 (0) | 2023.04.22 |
| Storyboard 로그인 화면, 로그아웃 시 데이터 삭제 처리의 베스트 프랙티스 (0) | 2023.04.22 |
| 한 디렉터리에 있지만 다른 디렉터리에 없는 파일 찾기 (0) | 2023.04.22 |


