2012-05-30 3 views
1

오디오 태그 및 Firefox에 문제가 있습니다. 기본 브라우저 컨트롤을 사용하고 있습니다. 크롬과 오페라에서는 잘 작동하지만 Firefox의 진행률 표시 줄은 정상적으로 유지됩니다 (레코드가 끝난 것처럼). 사운드는 정상적으로 재생되지만 파일을 탐색 할 수는 없습니다. 나는 무엇을 잘못 했는가?오디오 태그 진행 표시 줄이 오른쪽에 서 있음

다음은 브라우저로 파일을 보내는 방법입니다.

header('Content-Description: File Transfer'); 
header('Content-Type: audio/wav'); 
header('Content-Disposition: attachment; filename=' . basename($clientName)); 
header('Content-Transfer-Encoding: binary'); 
header('Expires: 0'); 
header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); 
header('Pragma: public'); 
header('Content-Length: ' . filesize($file)); 

readfile($file); 

그리고 오디오 태그의 내 사용 : 귀하의 답변에 미리

<audio preload="auto" controls="controls" src="/record/download/id/55" /> 

감사합니다.

답변

1

Firefox는 범위 요청 ("범위"요청 헤더 포함)을 보내고 서버 코드는 그에 따라 응답해야합니다 ("206 부분 콘텐츠"상태 포함). 서버가 범위 요청을 인식하지 못하는 경우 firefox는 일종의 실시간 스트림이라고 가정하고 설명 된 방식으로 동작합니다.

코드가 아파치 서버를 통해 실행되는 경우 mod_xsendfile과 같은 방법으로 범위 요청을 처리 할 수 ​​있습니다. 또 다른 옵션은 자신을 구현하는 것입니다. 자세한 내용은 RFC 2616, 특히 10.2.7 절과 14.35 절을 참조하십시오.

+0

답변 해 주셔서 감사합니다. – Agares

관련 문제