Diese Frage folgt auf Wie kopiere ich Dateien auf einen nicht vertrauenswürdigen Computer? Da es anscheinend keine spezielle App für diesen Zweck gibt, suche ich jetzt nach einem http- oder ftp-Server als Alternative. Insbesondere suche ich nach einem kompakten Server, der für eine einfache einmalige Dateiübertragung zwischen Computern geeignet ist. Damit meine ich, dass es als rsync / scp-Ersatz fungieren sollte, um Dateien von einem Computer auf einen anderen zu übertragen, und nicht als klassischer Webserver. Außerdem sollte es:
- im Userspace laufen
- Seien Sie einfach zu konfigurieren (dh keine Konfigurationsdatei, alles über die Befehlszeile möglich)
- Support Benutzername / Passwort
- unterstütze die Fortsetzung der Downloads
- Unterstützung des Exports einzelner Dateien anstelle ganzer Verzeichnisse
Die Antwort von dbr auf die vorige Frage wird knapp, aber es handelt sich natürlich nur um einen Ad-hoc-Hack, dem viele nützliche Funktionen fehlen.
Antworten:
Ich benutze diesen schnellen Python-Hack oft, um ein Verzeichnis über HTTP zu bedienen.
wird das aktuelle Verzeichnis bedienen.
Standardmäßig wird es an Port 8000 gebunden.
So wählen Sie einen anderen Port aus:
Wenn Sie unter * nix einen niedrigeren Port als 1024 auswählen, benötigen Sie möglicherweise Root-Rechte, da sonst bind () fehlschlägt.
quelle
python3 -m http.server
Jemand auf SO hat mich auf Woof hingewiesen . Ein minimaler httpd in Python mit einer Oberfläche, die speziell für solche Zwecke optimiert wurde. Es erfüllt nicht alle Ihre Anforderungen. Indem Sie jedoch angeben, wie oft die Verbindung hergestellt werden soll, können Sie die Option "Sind Sie bereit? Ich starte den Server jetzt." Verwenden. Ansatz zur Sicherung der Übertragung.
Damit eine (1) Verbindung
thisfile
auf Port 8080 heruntergeladen werden kann , müssen Sie nur ausführenSo einfach ist das.
Hier ist das eher missbrauchte Original . Wenn es dir gefällt, stimme für Nate.
quelle
Sie können webfs ausprobieren, das über das Ubuntu-Repository verfügbar ist:
Eine weitere Option ist HFS (Http File Server) , eine Windows-App, die über Wine gut funktioniert .
quelle
Ignorieren Sie bitte, wenn Sie nicht für Alternativen offen sind, aber die Tatsache, dass Sie bereit sind, einen HTTP-Server ohne Voreinstellungen zu installieren, zeigt mir, dass Sie die Aufgabe, eine Datei zu übertragen, mehr erledigen möchten, als dies der Fall ist.
Darf ich empfehlen, einen FTP-Server zu installieren?
Sie können so ziemlich alles tun, was Sie benötigen, und es ist normalerweise sehr einfach einzurichten. Sie können sogar den Port für die Verwendung von 80 konfigurieren, wenn dies erforderlich ist.
quelle
Darf ich http://code.google.com/p/pyftpdlib/ empfehlen ?
Es ist leicht, lade den Quellcode herunter und schreibe ein Python-Skript (kopiere einfach den Schnellstart-Teil auf der Homepage, es reicht aus, 5-6 Zeilen, setze Benutzername und Passwort, Home-Verzeichnis usw.).
Ich benutze es für persönliche Zwecke Dateiübertragung von PC zu PC (auf Ubuntu Hardy). Ein bekanntes Problem (und ich kann es ertragen) ist, dass es mit Unicode (nicht-ASCII) nicht gut umgehen kann.
quelle
Die Antwort ist einfach:
thttpd
. Es gewinnt zweifellos an Leistung, Speichernutzung und Sicherheit. Und unter Sicherheit verstehe ich, dass es durch kompetentes Design sicher ist und nichts Dummes tut, nicht, dass es alle Arten von "Sicherheits-Schnickschnack" hat. Es ist auch in Bezug auf Größe und Einfachheit nahezu optimal.Wenn Sie noch kleiner und einfacher benötigen, bietet BusyBox ein
httpd
Applet, das möglicherweise auch Ihren Anforderungen entspricht.Ich bin mir nicht sicher, ob sie einige Ihrer Anforderungen erfüllen, beispielsweise das Bereitstellen einzelner Dateien, aber Sie können dies mit einem Wrapper tun, der Symlinks in das http-Stammverzeichnis einfügt. Wenn Sie dies jedoch mit thttpd tun, müssen Sie die Symlink-Einschränkungen deaktivieren.
(Ich weiß, diese Frage ist alt, aber es ist ein Top-Ergebnis bei Google und die vorhandenen Antworten sind alles andere als leicht.)
quelle
thttpd
war auch meine Lieblingsantwort, wurde aber 2011 von Debian, Ubuntu und RedHat entfernt , weil es "verwaist" war, veröffentlichungskritische Fehler aufweist und im Upstream tot ist. Ich würde es nicht mehr empfehlen.Sie können auch HFS, auch als HTTP-Dateiserver bezeichnet, ausprobieren ( http://www.rejetto.com/hfs/ ). Obwohl es sich um eine Windows-Anwendung handelt, funktioniert sie angeblich gut mit WINE. Es ist sehr wartungsarm und selbst Anfänger, die nicht einmal wissen, was ein Dateiserver ist, können es ohne großen Aufwand verwenden. Es unterstützt Drag & Drop-Funktionen und Sie können sogar steuern, welche IP-Adressen auf die Dateien zugreifen können. Außerdem werden Benutzerkonten und die Download-Geschwindigkeitssteuerung unterstützt.
quelle