PHP: открыть файл на сервере для скачивания? - PullRequest
0 голосов
/ 02 апреля 2012

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

Спасибо

Ответы [ 4 ]

2 голосов
/ 02 апреля 2012

Пожалуйста, уточните, является ли ваш сервер веб-сервером? Если это так, вы можете просто добавить PDF-файл где-нибудь в корневом каталоге и перейти к нему прямо в веб-браузере, и он должен автоматически загрузиться.

т.е. http://whateveryoursiteis.com/testpdf.pdf

1 голос
/ 02 апреля 2012

есть разные варианты:

Во-первых: если он находится в вашей папке htdocs, просто ссылку на него (http://example.com/myfile.pdf)

Второе: вы можете использовать заголовок x-sendfile. это поддерживается не всеми серверами. Обязательно прочитайте документы, чтобы узнать, что предоставляет ваш сервер

третье: вы можете установить соответствующий заголовок (Content-Type, Content-Length и т. Д.), А затем прочитать файл с помощью функции readfile

0 голосов
/ 02 апреля 2012
$doc = 'path/to/doc.pdf';
header('Content-Disposition: attachment; filename="downloaded.pdf');
readfile($doc);

будет загружено как загруженное.pdf

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

Если вы используете сервер Apache, вы можете добавить этот код в конфигурацию VirtualHost или в свой файл .htaccess:

<FilesMatch "\.(pdf|PDF)">
  ForceType application/pdf
  Header set Content-Disposition attachment
</FilesMatch>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...