Как заставить файлы открываться в браузере вместо загрузки (PDF)? - PullRequest
182 голосов
/ 09 июня 2011

Есть ли способ принудительно открыть PDF-файлы в браузере, если опция «Отображать PDF в браузере» не отмечена?

Я пытался использовать тег embed и iframe, но он работает только при включении этой опции.

Что я могу сделать?

Ответы [ 13 ]

0 голосов
/ 09 ноября 2012

Вы можете сделать это следующим образом:

<a href="path to PDF file">Open PDF</a>

Если файл PDF находится внутри какой-либо папки и эта папка не имеет разрешения на прямой доступ к файлам в этой папке, тогда вам придется обойти некоторыеограничения доступа к файлу, используя .htaccess настройки файла следующим образом:

<FilesMatch ".*\.(jpe?g|JPE?G|gif|GIF|png|PNG|swf|SWF|pdf|PDF)$" >
    Order Allow,Deny
    Allow from all
</FilesMatch>

Но теперь разрешите только определенные необходимые файлы.

Я использовал этот код, и он работалидеально.

0 голосов
/ 25 апреля 2012

Либо использовать

<embed src="file.pdf" />

, если встраивание является опцией или мой новый плагин, PIFF: https://github.com/terrasoftlabs/piff

0 голосов
/ 09 июня 2011

Если вы ссылаетесь на файл .PDF, он открывается в браузере.
Если флажок снят, он должен ссылаться на файл .zip для принудительной загрузки.

Если файл .zip не являетсязатем используйте headers в PHP для принудительной загрузки

header('Content-Type: application/force-download'); 
header('Content-Description: File Transfer'); 
...