У меня есть пользователь Windows, с которым я хочу поделиться большим файлом, у него есть Firefox, который, как я понимаю, поддерживает возобновляемую загрузку файлов HTTP, и у меня Ubuntu Linux, но ограниченное дисковое пространство и тому подобное, поэтому я не хочу полноценного решения, такого как Веб-сервер Apache.
Я хотел бы просто запустить сервер через командную строку или графический интерфейс, когда я хочу, а не при загрузке.
Если я могу избежать этого, я не хочу редактировать файл конфигурации - я бы просто дал аргумент командной строки для его порта, я привык использовать python -m SimpleHTTPServer - но я не думаю, что это возобновляемая.
Ответы:
Используйте thttpd .
Каталог
/home/bob/sharedfolder
станет доступным по адресу .http://address:8080
lighttpd можно использовать аналогичным образом, хотя для этого требуется небольшой конфигурационный файл. Например:
который затем запускается так:
источник
python -m SimpleHTTPServer 8000
должно хватить ... :)SimpleHTTPServer
не поддерживает диапазоны байтов, то есть не может возобновить прерванные передачи. Тест сcurl http://localhost:8000/testfile -o /dev/null -C 100
, например.Недавно я создал модуль Python
ext_http_server
, который расширяет функциональные возможностиSimpleHTTPServer
модуля. Одной из его функций является возобновляемая загрузка файлов, помимо https, аутентификации и ограничения скорости.Вот прямая ссылка на инструкции по установке и использованию.
Я должен сказать, что lighttpd содержит все те же функциональные возможности, так что если вы ищете что-то готовое для производства, используйте lighttpd. Если вы ищете в Python что-то, что вы можете легко собрать, проверьте
ext_http_server
.источник
Используйте Lighttpd - вы используете Linux, так что я думаю, что вы знакомы с тренировкой! Поместите файл, которым вы хотите поделиться, в папку / var / www. Измените файл init.d conf, чтобы удалить Lighttpd из демонов загрузки.
Lighttpd делает все, что вы хотите, и даже больше - и, это не маленький, его крошечный! ;)
источник