
기술적으로 (서버에서) 호스팅 방식의 차이점은 무엇입니까?
- 다운로드하는 동안 일시 중지하고 다시 시작할 수 있는 파일
- 한 번에 다운로드해야 하는 파일이 있나요?
답변1
서버는 부분 콘텐츠를 제공하고 부분 요청을 처리하는 기능을 지원해야 합니다. 내부적으로 구축한 것을 사용하지 않는 한 대부분의 최신 웹 서버는 이를 처리할 수 있습니다.
이 글을 읽으면 더 많은 정보를 얻을 수 있습니다아파치문서 및 관련 RFC. 연결된 문서에서 - 응답의 예입니다.
HTTP/1.1 206 Partial Content
Date: Wed, 15 Nov 1995 06:25:24 GMT
Last-Modified: Wed, 15 Nov 1995 04:58:08 GMT
Content-type: multipart/byteranges; boundary=THIS_STRING_SEPARATES
--THIS_STRING_SEPARATES
Content-type: application/pdf
Content-range: bytes 500-999/8000
...the first range...
--THIS_STRING_SEPARATES
Content-type: application/pdf
Content-range: bytes 7000-7999/8000
...the second range
--THIS_STRING_SEPARATES--
답변2
일반적인 것은 content-size
또는 content-range
헤더가 없다는 것입니다. 아마도 작성자가 다운로드 스크립트에 하나를 설정하는 것을 잊었나요?
답변3
HTTP 서버가 14.35절에 정의된 범위 검색 요청을 지원하는 경우 다운로드를 재개할 수 있습니다.RFC 2616, Wikipedia에서는 "바이트 제공"뭔가 이상한 이유로.
- 서버는 바이트 제공을 지원함을 나타내기 위해 또는 요청
Accept-Ranges: bytes
에 대한 응답으로 보냅니다.HEAD
GET
- 클라이언트는 을
GET
포함하는 요청을 보냅니다Range: bytes=aaa-bbb
. 여기서 시작 오프셋은aaa
파일 시작 이후의 바이트이고 범위의 길이는bbb - aaa + 1
바이트입니다. - 서버는 를 포함하는 상태 206(부분 콘텐츠) 응답을 보냅니다
Content-range: bytes aaa-bbb/cccc
. 여기서 는aaa-bbb
이전과 같고cccc
는 파일 길이(바이트)이거나*
서버가 이를 확인할 수 없는 경우 요청된 바이트 범위를 포함하는 응답 본문이 뒤따릅니다. 범위가 범위를 벗어나면 서버는 대신 상태 416(요청된 범위가 충족되지 않음) 응답을 보냅니다.
일부 비디오 플레이어는 범위 요청을 사용하여 비디오 탐색을 지원합니다. Ogg 미디어 컨테이너는 다음을 사용합니다.보간된 이등분 검색이 사용 사례를 지원합니다.
널리 사용되는 웹 서버 소프트웨어는 정적 파일의 범위를 제공하도록 구성할 수 있지만 다운로드를 인증하는 서버측 스크립트는 범위 자체를 처리할 수도 있고 그렇지 않을 수도 있습니다. (스크립팅 언어 매뉴얼을 확인하십시오.) 대중에게 공개된 다운로드 서버의 일부 운영자는 여러 다운로드 관리자가 콘텐츠 범위에 대한 지원을 사용하여 서버에 두 개 이상의 요청을 보내고 다운로드를 제공하는 데 사용할 수 있는 리소스를 독차지했기 때문에 의도적으로 범위 요청을 차단했습니다. 다른 사용자에게.