2017-01-16 3 views
0

긴 풀링 메커니즘이 구현 된 Symfony2 애플리케이션이 있습니다. 사용자는 응용 프로그램에 로그인하고 특정 시간에 응용 프로그램 내에서 여전히 작동하는 동안 사용자에게 몇 가지 변경 사항을 알리기 위해 긴 풀링 요청이 시작됩니다.Symfony2 long polling on SSL 서버

php 세션이 데이터베이스에 저장되므로 긴 풀링 기간 동안 다른 ajax 요청을 여는 동안 세션 잠금 문제가 발생하지 않습니다.

SSL 인증서를 설치 한 후 문제가 발생하여 실행 중일 때 긴 풀링이 다른 요청을 잠그는 것처럼 보입니다. 정상적인 PHP 세션처럼 작동합니다. php 세션이 여전히 데이터베이스에서 저장/읽지 만 응용 프로그램은 잠금 메커니즘이있는 것처럼 동작하며 동시에 두 요청을 허용하지 않습니다.

SSL 모듈 구성에 문제가 있습니까? 아니면 Symfony의 동작에 대해 빠진 것이 있습니까? SSL을 비활성화하면 모든 것이 잘 작동하며 동시에 여러 요청이 문제가되지 않습니다.

늦은 편집 :

은 분명히 문제가 HTTP2 헤더로했다. HTTP2 헤더를 사용하면 동시 요청은 대기열에 넣어지고 차례대로 실행됩니다. HTTP1.1을 사용하면 모든 것이 정상입니다. 아파치 설명서에 따라 서버 설정을 점검했기 때문에 이것이 정말 이상합니다. 이것은 내 SSL 모듈에서 작동합니다. 누구나 이런 경험을 한 적이 있습니까?

답변

0

jQuery 또는 Angular로 클라이언트에서 수행하고 있습니까? 그렇다면 JS 콘솔 및 디버그 네트워크를 확인하십시오. 또한, 서버의 SSL 아파치 conf에 손을 넣을 수 있습니까? 일부 매개 변수는 서버의 기본 구성에 과부하가 걸릴 수 있으며 작동중인 비 SSL 구성과 충돌 할 수 있습니다.

+0

응용 프로그램에 ExtJS 5.1을 사용하고 있습니다. 콘솔이나 서버에는 오류가 없습니다. 프로토콜 HTTP/매우 될 것입니다 1.1 H2 ' –

+0

확인에 ' ProtocolsHonorOrder : 또한 서버와 새의 기존 SSL의 설정 사이의 유일한 차이는 인증서 파일의 경로와이입니다 인증서 또는 프로토콜 주문 관리 경로가 문제에 영향을 미치는 경우 예기치 않은 결과가 발생합니다. 아파치 로그를 확인 했습니까? ProtocolsHonorOder를 제거하려고 했습니까? 우리는 결코 모른다 ..... – bohr

+0

프로토콜에서 h2를 제거한 것 같습니다. 나는 아직도 왜 이런 일이 일어나는지 읽을 필요가있다. 그러나 당분간 나는 프로토콜 h2c http/1.1만을 사용할 것이다. –

관련 문제