Как настроить Apache2 для загрузки файлов напрямую?

: -)

У меня есть сервер, на котором работает Ubuntu Server 14.04, и на нем запущен веб-сервер apache2. Я хотел бы иметь личный веб-сайт для меня и нескольких друзей, чтобы разместить несколько файлов. Я создал сайт, и все идет гладко. Чтобы проверить хостинг файлов, я создал файл «test.txt» в каталоге / var / www / html и создал ссылку на страницу на файл. В файле у меня была эта строка:

This is a test file.

Когда я нажимаю на ссылку в своем браузере на моем компьютере, вместо загрузки файла появляется строка «Это тестовый файл». появляется в моем браузере. Проверено на нескольких браузерах. Какие-либо предложения? Я очень новичок в хостинге сайтов ... я что-то забыл? Заранее спасибо.

-Ryan

3
задан 17 April 2015 в 23:32

3 ответа

Можно вынудить это быть загруженным, заставив Apache сообщить, что это - тип контента, чтобы быть application/octet-stream, вместо обычного text/html. Это не что-то, к чему я рекомендовал бы делать .txt файлы. В Вашем .htaccess (или другие конфигурационные файлы Apache), добавьте:

AddType application/octect-stream .txt

Другой подход должен использовать ForceType в a Files или a Directory блок, как обрисовано в общих чертах в этом ТАК отвечают:

<Files *.mp4>
  ForceType application/octet-stream
  Header set Content-Disposition attachment
</Files>

Преимущество состоит в том что критерий соответствия a Files блок более гибок, чем блок плоскости AddType.

2
ответ дан 1 December 2019 в 16:28

Текстовый файл может быть считан апачем и будет считан и отображен им, можно все еще сохранить файл с браузером, все же.

Попробуйте еще раз с другим окончанием как text.zip. Не должна даже быть реальная zip, изменение окончания изменит поведение.

На личном сообщении: Удостоверьтесь, что защитили свой сервер с .htaccess и комбинацией пользователя/пароля, если эти файлы не для общественности!

1
ответ дан 1 December 2019 в 16:28

если необходимо продвинуть файл, который является простым текстом вниз клиенту в браузере, необходимо будет использовать что-то как php и создать некоторых для напр. index.php файл в корне: каталог/var/www/html и добавляет что-то вроде этого:

<?php
$file = 'test.txt';

if (file_exists($file)) {
    header('Content-Description: File Transfer');
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename='.basename($file));
    header('Expires: 0');
    header('Cache-Control: must-revalidate');
    header('Pragma: public');
    header('Content-Length: ' . filesize($file));
    readfile($file);
    exit;
}
?>

Я - afraind, что необходимо будет установить php на апаче сначала, чтобы смочь использовать код для этого..

Я редактор Google это и это - что-то вроде этого-> sudo apt-get install php5

Удача, и сообщила мне, работала ли она..

k

0
ответ дан 1 December 2019 в 16:28

Другие вопросы по тегам:

Похожие вопросы: