投稿

ラベル(inline)が付いた投稿を表示しています

Google Chrome で basic認証を埋め込んだURLの pdfのインライン表示ができない

イメージ
少し前から Google Chrome で pdf のインライン表示されなくなった PHPだとこんな単純なコード         $filepath = 'files/foo.pdf' ;         $filename = 'foo.pdf' ;         header ( 'Content-Type: application/pdf' );         header ( "Content-Disposition: inline; filename= \" { $filename} \" " );         header ( 'Content-Length: ' . filesize ( $filepath ));         readfile ( $filepath ); Google Chrome では一時的に Content-Disposition: inline がダウンロードになったり、その後、Google Chrome で開いた(中身のないpdf表示)後、アドレスバーへフォーカスを移して Enter キーを入力すると表示されたりします(F5等では変化なし) PHPの問題なのか、ブラウザの問題なのか... 【追記】 原因判明 デベロッパーツールで、表示される場合とされない場合を比較した結果 Basic認証を埋め込んだURLをリンクにした場合、インライン表示が出来ない 親URLに認証を埋め込んだ上で、相対リンク(ドメインを記載しない)を使用した場合でも同じです アドレスバーへフォーカスを移して Enter を入力した場合は、ドメインに付与されたbasic認証情報が引き継がれないため、正常にインライン表示が出来ていたようです NG https://user:password@example.com/ <a href="download.php?file=foo.pdf"> OK https://user:password@example.com/ <a href="https:...