문제

Azure에서 웹 역할에서 Signalr을 실행 중입니다.그것은 약 1 년 동안 완벽하게 일하고 있습니다.그러나 VS2013을 업데이트하고 모든 패키지를 업데이트 한 후에는 Azure에 배포 할 때 내 SignalR 허브가 생성되지 않는 것처럼 보입니다. http://mysite.cloudapp.net/signalr/hubs value를 얻을 때null 일 수 없습니다. 매개 변수 : 키 "오류가 있고 클라이언트가 연결할 수 없습니다.

그러나 아직도 Azure Dev Fabric에서 내 컴퓨터에서 완벽하게 작동합니다.

무엇이 잘못 되었습니까?SignalR이 등록 된 시작 클래스가 있습니다.

[assembly: OwinStartup(typeof(MyNamespace.Startup))]
namespace MyNamespace
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            app.MapSignalR();
        }
    }
}
.

OWIN은 nuget을 통해 2.1.0.0으로 업데이트됩니다.

Azure Production Environment에서 생성 된 허브를 얻기 위해해야 할 일이 더 많이 있습니까?

도움이 되었습니까?

해결책 2

Visual Studio에서 웹 역할 프로젝트를 다시 작성하고 수동으로 모든 코드를 다시 추가하는 것이 었습니다.가능성있는 범인은 web.config이고 NuGET 패키지를 업데이트하고 설치할 때 수정 한 다음 다시 수정 한 후 다시 수정 한 다음 확실합니다.그러나 새로운 Visual Studio 프로젝트 (동일한 코드로)에서 새로 만들 때 완벽하게 작동했습니다.

다른 팁

아직하지 않은 경우 Azure에서 WebSocket을 사용하도록 설정해야합니다. ASP.NET 사이트에 따라 :

Azure 웹 사이트에서 WebSockets 활성화

WebSockets는 Azure 웹 사이트에서 명시 적으로 활성화되어야합니다. SignalR 응용 프로그램에서 사용됩니다.그렇지 않으면 다른 프로토콜이 사용됩니다 (자세한 내용은 전송 및 대체 참조).

WebSockets는 기본 및 표준 계층에서만 사용할 수 있습니다. Azure 웹 사이트 및 활성 웹 소켓 연결 수 기본 계층 사이트로 제한됩니다.웹 사이트 가격 설정 세부 정보를 참조하십시오 추가 정보.

Azure 웹 사이트에서 WebSockets를 사용하려면 사이트의 구성 섹션.이렇게하려면 웹 사이트를 열어 두십시오 Azure 관리 포털 및 구성을 선택하십시오.그 꼭대기에 구성 페이지에서 .NET 4.5가 웹 사이트에 사용되는지 확인하십시오.에서 구성 페이지의 맨 아래에서 저장을 선택하여 저장하십시오. 변경.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top