왜 크롬 가끔 다운로드 PDF 파일을 여는 대신 그것은?

제가 특정 주소의 PDF 파일이 Chrome 다운로드 PDF 파일을 여는 대신 그것을 사용하는 built-in PDF viewer. 페이지가 다음에 빈 흰색이다.

에 문제가 없는 내 Chrome 설정:도의 주소로 다른 PDF 파일 및 크롬 예상대로 작동합니다(나는 그것을 설정하면 Chrome 을 사용하는's built-in PDF viewer). 하지만 시간 동일한 문제가 있는 주소,크롬 다운로드 PDF 다음을 표시합니다.

내가 사용하여 Windows10 과 크롬 버전 63.0.3239.84(공식을 구축)(64-bit).

내 문제가 있는 특정 URL 이 시간은여기서(구글 검색 결과).

해결책

기본적으로,이기 때문 웹사이트 브라우저를 알려줍니다. 때때로,그's 기 때문에 웹 사이트 개발하기로 결정은 그들이 원하는 이 행동이,예를 들어,일반적인 파일 공유 사이트입니다. 다른 시간에,그것이's 기 때문에 그것이's 에 대한 기본 옵션을 무엇이든 그들은 소프트웨어'다시 사용하여(예를 들어 포럼이나 블로그는 소프트웨어). 때로는's 기 때문에 사이트 데브가 없는 아이디어들은 무엇'다하고있다.

콘텐츠 처

는's 일반적으로 하기 때문에 사이트를 전송Content-Disposition헤더에 응답합니다. 특히,그것을 보낼 수 있습니다거나inline또는첨부. inline는 경우 기본적으로 그렇지 않으면 지는 것을 의미합니다 브라우저를 열고 파일 이내에 브라우저 창은 경우 수 있습니다. 첨부는 의미를 항상 파일을 다운로드하려고 시도하지 않을 열고 그 안에 브라우저입니다.

는 경우에 당신은 당신의 브라우저를 열's developer tools'볼 수 있는 특별한 링크를 보내는 다음과 같은 응답 헤더

Content-Disposition: attachment; filename="Schubert-Sonata-21-B-flat.pdf"
Content-Type: application/pdf

이는 브라우저항상 다운로드(첨부)파일,그리고 기본 파일의슈베르트-소나타-21-B-플랫.pdf보다는 추측에서 URL 이 있습니다. 또한,그것이 알려 않는 브라우저(올바로)는's 는응용 프로그램/pdf 파일을-하지만 이것이's an첨부`브라우저는 아직도 기본적으로 다운로드합니다.

인라인 세부 정보를 처리

콘텐츠분에는인라인(또는 지정되지 않음),브라우저에 파일을 열려고 시도 기본에 포함된 뷰어입니다. 이는 브라우저가 알고있는 어떤 파일 종류,and브라우저에는 방법을 알고 있는 유형입니다.

유형 검출

파일 형식을 지정할 수 있습으로 서버Content-Type헤더가 있습니다. 예를 들어,가장 흔히 볼 수 있는 인라인 형식은text/html,application/javascripttext/css하는,세 가지 주요 부분의 현대적인 웹 사이트입니다. 할 수도 있습니다 더 많은 비의 유형이 다음과 같응용 프로그램/pdf. 가능성은 또 다른 서버가 지정한Content-Typeapplication/octet-stream. 이는 가장 일반적인 유형,그리고 브라우저를 알려줍는 파일은 임의의 데이터가되는 시점에서 유일한 것은 브라우저 할 수있는 다운로드(이론에-우리는'을 얻을 것을)입니다. 때Content-Type지정하지 않은 서버에서(그리고 때로는 경우에도),브라우저를 수행할 수 있습으로 알려진스니핑를 시도하는 유형을 추측하여 파일을 읽고 찾는 패턴이 있습니다.

형식을 처리

을 받기 파일로는인라인 또는 지정되지 않은 처리,브라우저 요구하는 그것을 열려고 브라우저 내에서 가능한 경우. 이를 위해,그것은 외모에서 파일 형식으면 그것을 인식하면 그것을 입력하려고 엽니다. 대부분의 브라우저를 열고text/식에서 간단한 텍스트 viewer,도를 렌더링하는text/html으로 웹페이지할 수 있열린응용 프로그램/json에서 특별한 구문 강조 표시된 뷰어,등등.... 형application/octet-stream처리되었습니다. 이후 그's 해야하는데 가장 일반적인 입력을 나타내는 임의의 스트림의 바이트가 아닌't 있어야 모든 핸들러를 적용할 수 있는 모든 파일이"유형". 예를 들어,파이어폭스,[이 드러난 무능력으로 설정의 기본 핸들러](http://kb.mozillazine.org/File_types_and_download_actions#Unable_to_set_an_automatic_action 의)application/octet-stream. 일부 웹사이트 또한 사용되는 비표준 형식입니다. 나는've seen응용 프로그램/force-다운로드 사용으로 끝나는 다운로드기 때문에 브라우저 인정하지 않거나 알고 무엇을 할 수있는 다른 유형,그러나지 않을 즐길 수 있는 특별한 처리는application/octet-stream`않습니다.

의 역사를 교훈

는 방법을 참조 Pdf 파일 처리되,우리가 즐거운 시간을 보낼 수 있습금으로 웹의 역사. 볼,과거에는 브라우저 아무 생각이 없었는 무엇 PDF 입니다. 그래서 그들은 그것을 열 수 없습니다. 그러나 우리는've seen Pdf 파일을 열고 있는 브라우저에서 오래 전에 내장된 PDF 파일 시청자들었다 것,그래서 어떻게 일하는가? 사용 가능한 브라우저 확장 기능으로 훨씬 더 많은 보다 무엇을 할 수 있는 제한된 확장자/애드온은 이러한 일입니다. 사람들은 가장 일반적으로 알려져 있으로플러그. Internet Explorer 에서 그들은 ActiveX 컨트롤;에서 모질라 파이어 폭스리고 나중에 Google Chrome 들 NPAPI 플러그인입니다. 이러한 플러그인 할 수 있었는 모든 일을 다른 프로그램을 할 수 있고 또한 자신을 등록 핸들러로 특정 파일 형식될 수 있는 그렇지 않으면 인식되지 않는 브라우저에 의해. (덧붙여,이 나중에 발견될 큰 보안 위험과 지원을 위해 이 강력한 플러그인이 서서히 떨어졌다...) 일에서의 플러그인을 설치 Adobe Acrobat Reader 는데,그렇다면 설치 ActiveX 또는 NPAPI 는 플러그인을 등록하는응용 프로그램/pdfMIME 형식을 말한 브라우저를 열기는 그 형태 인라인을 사용하여 플러그인입니다. 물론,다수의 보안과 성능으로 인해 발생하는 문제 플러그인,주요 브라우저 공급업체기로 결정했을 통합하는 자신의 PDF 파일 시청자들면서 단계적으로 대부분 지원합니다. 단 하나 우리는 여전히 볼 수은 어떤 플래시,처리하는application/x-shockwave-flash. 이's 실제로는 여전히 몇 가지 남은 제한,예를 들어,파이어 폭스에서미리보기 Firefox 에서옵션은 여전히 존재한다: 과거에는,이 것이 허용 사이의 선택의 여러 플러그인을 등록하는 유형입니다. 예를 들어,이 목록의 형식을 위해 플래시: 그 일이 있었기 전에 언론의 많은 지원과 함께 HTML5. 그것이 아니었't just Pdf 파일을-당신의 브라우저 없는 아이디어를 처리하는 방법 MP4 컨테이너 또는 H.264 비디오,아이디어가 어떻게 재생하는 MP3 파일,etc., 등 볼 수 있는 플러그인에 의해 제공됩 미디어 플레이어 같은 VLC 또는 윈도우 미디어 플레이어나,웹사이트를 포함 미디어 플레이어에 내장 플래시입니다.

해설 (3)

내가 찾는 설명이다. 에 따르면답변을 발견,그것은 나타나는 크롬이 PDF 를 다운로드하는 경우에는 MIME 내용 유형을 설정하지 않는응용 프로그램/pdf지만 오히려"잘못되거나 일반 MIME type",application/octet-stream.

,"대부분의 웹 서버로 보내는 알 수 없는 형 자원을 사용하여 기본application/octet-streamMIME 형식입니다. 보안상의 이유로,대부분의 브라우저에서 허용하지 않는 설정을 사용자 정의 기본 작업에 대한 이러한 자원을 강제로 사용자를 저장하는 디스크에 사용하는 어머니를 찾을 수 있습니다.quot;

해설 (3)

이것은HTTP콘텐츠 처header을 지정하는 파일입니다첨부 파일을. 이 지시 브라우저에 파일을 다운로드보다 오픈 그 모습을 볼 수 있습니다.

가 크롬가는 이 동작을 재정의할 수 있습니다.다음과 같은 이미지에서는 파이어 폭스 개발자 도구

해설 (3)