Esta pergunta é uma continuação de Como copiar arquivos para um computador não confiável? , como não parece haver um aplicativo dedicado para esse fim, agora estou procurando um servidor http ou ftp como alternativa. Mais especificamente, estou procurando por um servidor leve que seja utilizável para transferência simples de arquivos únicos entre computadores. Com isso, quero dizer que deve funcionar como substituto do rsync / scp para obter arquivos de um computador para outro, não como um servidor Web clássico. Além disso, deve:
- executar no espaço do usuário
- ser trivial para configurar (ou seja, nenhum arquivo de configuração, tudo possível via linha de comando)
- suporte nome de usuário / senha
- suporte continuação de downloads
- suporta a exportação de arquivos únicos em vez de diretórios inteiros
A resposta do dbr à pergunta anterior se aproxima, mas é claro que é apenas um hack ad hoc que carece de muitos recursos úteis.
Respostas:
Costumo usar esse hack rápido do Python para servir um diretório via HTTP.
servirá o diretório atual.
Por padrão, ele se liga à porta 8000.
Para escolher outra porta:
Se você escolher uma porta menor que 1024 no * nix, poderá precisar de privilégios de root, caso contrário, o bind () falhará.
fonte
python3 -m http.server
Alguém no SO me apontou para Woof . Um httpd mínimo em python com uma interface otimizada apenas para esses usos. Na verdade, ele não atende a todos os seus requisitos, mas, ao especificar o número de vezes que ele será conectado, você poderá usar o "Você está pronto? Estou iniciando o servidor agora". abordagem para garantir a transferência.
Para permitir que uma (1) conexão seja baixada
thisfile
na porta 8080, basta executarÉ tão fácil.
Aqui está o original bastante abusado . Se você gosta, vá votar no Nate.
fonte
Você pode experimentar os webfs disponíveis no repositório Ubuntu:
Outra opção é o HFS (Http File Server) , um aplicativo do Windows que funciona bem no Wine .
fonte
Ignore se você não está aberto a alternativas, mas o fato de estar disposto a instalar um servidor HTTP sem preferências mostra que você deseja concluir a tarefa de transferir um arquivo mais do que como ele é feito -
Posso recomendar que você instale um servidor FTP?
Isso permitirá que você faça praticamente tudo o que precisa e geralmente é muito fácil de configurar; você pode até configurar a porta para usar 80, se for um requisito.
fonte
Posso recomendar http://code.google.com/p/pyftpdlib/ ?
É leve, faça o download da fonte e escreva um script Python (basta copiar a parte de início rápido da página inicial, 5-6 linhas, definir nome de usuário e senha, diretório inicial, etc.)
Eu uso-o para uso pessoal transferência de arquivos pc para pc (no Ubuntu Hardy). Um problema conhecido (e posso suportar) é que ele não consegue lidar bem com Unicode (não ASCII).
fonte
A resposta é simples:
thttpd
. Ele ganha em desempenho, uso de memória e segurança. E por segurança, quero dizer que é seguro em virtude do design competente e não faz nada estúpido, não que ele tenha todos os tipos de sinos e assobios de "segurança". Também é quase ideal no que diz respeito ao tamanho e simplicidade.Se você precisar ainda menor e mais simples, o BusyBox possui um
httpd
applet que também pode atender às suas necessidades.Não tenho certeza se eles atendem a alguns de seus requisitos mais difíceis, como servir arquivos únicos, mas você pode fazer isso com um wrapper que coloca links simbólicos na raiz http. Se você fizer isso com o thttpd, no entanto, precisará desativar as restrições de link simbólico.
(Eu sei que esta pergunta é antiga, mas é um resultado excelente no Google e as respostas existentes são tudo menos leves.)
fonte
thttpd
costumava ser a minha resposta favorita também, mas foi removida do Debian, Ubuntu e RedHat em 2011 porque era "órfã, possui bugs críticos para o lançamento e está totalmente inativa". Eu não recomendaria mais.Você também pode tentar o HFS, também chamado de Servidor de Arquivos HTTP ( http://www.rejetto.com/hfs/ ). Embora seja um aplicativo do Windows, diz-se que ele funciona bem usando o WINE. Sua manutenção muito baixa e até novatos completos que nem sabem o que é um servidor de arquivos poderão usá-lo sem muito esforço. Ele suporta a funcionalidade de arrastar e soltar e você pode até controlar quais endereços IP podem acessar os arquivos, dar suporte às contas dos usuários e baixar o controle de velocidade.
fonte