Intereting Posts
Я получаю предупреждение php: не могу изменить информацию заголовка (но у меня есть файл include перед html-кодом!) Symfony2: Twig: файл шаблона по умолчанию в настраиваемом месте Принудительная страница для перезагрузки с сервера вместо загрузки кешированной версии Удалите пространство имен форм в форме Symfony2 (для REST API) Laravel Назад на страницу со старым вводом для проверки Удаление инъекции с использованием регулярного выражения PHP по-прежнему не позволяет загружать файлы более 2 МБ Предупреждение: mysql_connect (): не удается подключиться к локальному серверу MySQL Включение разрешений на запись Ubuntu Server в каталоге var / www / image Не удалось загрузить запрошенный класс: Session Codeigniter 3 OO PHP-пояснение Для braindead n00b Как войти в систему с помощью Github, Facebook, Gmail и Twitter в Laravel 5.1? Как преобразовать таблицу mysql в таблицу html для соответствия столбцам и строкам? Как создать скриншот веб-страницы с использованием сценария на стороне сервера? Где я могу найти полную документацию пакета symfony2 KayueWordPressBundle

Показать pdf на сайте

У меня небольшая проблема. На моем сервере у меня есть несколько файлов PDF, сохраненных за пределами общей папки. Я хочу отобразить эти файлы на своем веб-сайте.

Код для отображения pdf, который я использую сейчас:

$pdf = '/var/www/vhosts/domain.com/users/'.$_GET['file']; header('Content-type: application/pdf'); header('Content-Disposition: inline; filename="'.$pdf.'"'); readfile($pdf); 

Теперь я показываю их через iFrame, но в IE8 я получаю сообщение, чтобы сохранить файл на моем компьютере. На хром и IE9 проблем нет.

Есть ли лучший способ отобразить pdf-файлы?

просмотрите этот вопрос, у пользователя был тот же вопрос, что и у вас: покажите файлы PDF в браузере пользователей через PHP / Perl

У меня также есть уведомление о безопасности для вашего:

ЭТО: $pdf = '/var/www/vhosts/domain.com/users/'.$_GET['file']; Может быть крайне опасно, представьте, если кто-то изменит ваш параметр url следующим образом: yoursite.php? File = .. / .. / index.php

Если вы не очень осторожны здесь, люди могут загружать другие файлы с вашего сервера … так что будьте осторожны и подтвердите свой $ _GET ['файл'] перед его использованием.

С уважением

Я думаю, если вы оставите вас: content-disposition: inline и измените его на content-disposition: filename = "'. $ Pdf.'" Браузер определит, что делать с PDF. Если есть плагин для pdf, он будет использовать его.

 $pdf = '/var/www/vhosts/domain.com/users/'.$_GET['file']; header('Content-Disposition: inline; filename="'.$pdf.'"');// download header readfile($pdf) //read our file and shows on website