간단한 파일 전송에 적합한 경량 HTTP 또는 FTP 서버는 무엇입니까? [닫은]


25

이 질문은 신뢰할 수없는 컴퓨터에 파일을 복사하는 방법에 대한 후속 조치입니다 . ,이 목적을위한 전용 앱이없는 것처럼 보이므로 이제 대안으로 http 또는 ftp 서버를 검색하고 있습니다. 보다 구체적으로 컴퓨터 간 간단한 일회성 파일 전송에 사용할 수있는 경량 서버를 찾고 있습니다. 즉, 클래식 웹 서버가 아닌 한 컴퓨터에서 다른 컴퓨터로 파일을 가져 오기 위해 rsync / scp 대체로 작동해야합니다. 또한 다음을 수행해야합니다.

  • 사용자 공간에서 실행
  • 구성하기가 쉽지 않습니다 (예 : 구성 파일 없음, 명령 줄을 통해 모든 작업 가능)
  • 사용자 이름 / 암호 지원
  • 다운로드 계속 지원
  • 전체 디렉토리 대신 단일 파일 내보내기 지원

이전 질문에 대한 dbr의 대답 은 가까워 지지만 물론 많은 유용한 기능이 부족한 임시 해킹입니다.


python SimpleHTTPServer보다 약 4 배 빠른 Apache2를 사용하십시오.
o0omycomputero0o

답변:


31

필자는 종종이 빠른 Python 핵을 사용하여 HTTP를 통해 디렉토리를 제공합니다.

python -m SimpleHTTPServer &

현재 디렉토리를 제공합니다.

기본적으로 포트 8000에 바인딩됩니다.

다른 포트를 선택하려면

python -m SimpleHTTPServer 9090 &

* nix에서 1024보다 낮은 포트를 선택하면 루트 권한이 필요할 수 있습니다. 그렇지 않으면 bind ()가 실패합니다.


3
이 질문이 왜 종결되었는지 확실하지 않습니다. 질문과 답변은 모두 매우 유용했습니다.
merlin2011

8
또는 Python 3과 동등한 기능 :python3 -m http.server
Eliran Malka

6

그래서 누군가가 Woof를 가리 켰습니다 . 그러한 용도로 최적화 된 인터페이스가있는 Python의 최소 httpd. 실제로 모든 요구 사항을 충족하지는 않지만 연결 횟수를 지정하여 "준비 되었습니까? 지금 서버를 시작합니다."를 사용할 수 있습니다. 전송 보안에 대한 접근.

thisfile포트 8080에서 하나의 연결을 다운로드 하려면 다음을 실행하십시오.

$ woof thisfile

그렇게 쉽습니다.

여기 에 다소 남용 된 원본이 있습니다. 마음에 드시면 Nate에게 투표하십시오.


"업로드"
에도 유용

3

Ubuntu 저장소를 통해 사용 가능한 webfs 를 시도 할 수 있습니다 .

Webfs (일명 webfsd)는 순수한 정적 콘텐츠를위한 간단한 HTTP 서버입니다. 예를 들어 HTTP를 통해 FTP 서버의 컨텐츠를 제공하는 데 사용할 수 있습니다. 또한 구성 파일을 먼저 편집하지 않고 몇 초 안에 httpd 서버를 시작하여 일부 파일을 빠르게 내보내는 데 사용할 수 있습니다.

또 다른 옵션은 Wine을 통해 잘 작동 하는 Windows 앱인 HFS (Http File Server) 입니다.

HFS (Http File Server)는 파일을주고받을 수있는 파일 공유 소프트웨어입니다. 이 공유를 몇 명의 친구로 제한하거나 전 세계에 공개 할 수 있습니다. HFS는 네트워크가 없기 때문에 기존 파일 공유와 다릅니다. [...] 실제로 웹 서버이므로 친구는 웹 브라우저를 사용하여 웹 사이트에서 다운로드하는 것처럼 파일을 다운로드 할 수 있습니다.


1
여기서 아래로 투표는 어떻게 되나요? OP는 간단한 http 서버를 요청했으며 사람들이 제공했습니다. 그래서 무엇이 문제입니까?
dmckee

HFS는 또한 "업로드"에 적합합니다 (서버 자체를 설치할 수 없거나 설치하지 않은 사용자의 파일이 필요한 경우)
golimar

1

대안에 개방되어 있지 않다면 무시하십시오.하지만 환경 설정이없는 HTTP 서버를 기꺼이 설치한다는 사실은 파일 전송 방식보다 파일 전송 작업을 더 많이 수행하고 싶다는 것을 보여줍니다.

FTP 서버를 설치하는 것이 좋습니다.

필요한 모든 것을 거의 할 수 있으며 일반적으로 설정하기가 쉽고, 필요한 경우 80을 사용하도록 포트를 구성 할 수도 있습니다.


1
물론 FTP도 괜찮을 것입니다. 그러나 내가 아는 대부분의 FTP 서버는 정확히 경량이 아니며 추악한 여분의 수하물을 제공하여 단순한 일회성 파일 전송에 적합하지 않습니다 (즉, 루트 액세스 권한이 필요합니다. , 융통성없는 디렉토리 처리 등). Pure-FTPd를 사용하면 루트가 아닌 사용자로 시작하는 방법조차 알 수 없었습니다.
Grumbel

1
동의했다. 이를 이유로 파일 전송 프로토콜이라고합니다. 반면에 HTTP는 HyperText Transfer Protocol입니다. 하이퍼 텍스트에 관심이 없을 가능성이 높습니다.
Lee B

1
FTP는 어리석은 아이디어는 아니지만 OP가 요청한대로 설정하기가 쉬운 제안이 있습니까?
dmckee

1
http의 장점은 모든 일반 용도의 컴퓨터마다 웹 브라우저가 있으며 사용자가 편안하게 사용할 수 있다는 것입니다. 좋아, 그것은 ftp도 지원하지만, 만약 당신이 어쨌든 웹 브라우저를 사용한다면 ...
dmckee

2
윌, 여기서는 아파치와 같은 범용 서버에 대해서는 이야기하지 않습니다. 우리는 특수 목적의 최소한의 도구에 대해 이야기하고 있습니다. 으릉이 chttpd 보이는하게 무거운 .
dmckee

0

http://code.google.com/p/pyftpdlib/를 추천 하시겠습니까?
가볍고 소스를 다운로드하고 Python 스크립트를 작성하십시오 (홈 페이지의 빠른 시작 부분으로 충분합니다 .5-6 줄, 사용자 이름 및 비밀번호 설정, 홈 디렉토리 등).
개인용으로 사용합니다. PC에서 PC로 파일 전송 (Ubuntu Hardy에서). 한 가지 알려진 문제 (그리고 참을 수있는)는 유니 코드 (비 ASCII)를 잘 처리 할 수 ​​없다는 것입니다.


0

대답은 간단 thttpd합니다. 성능, 메모리 사용 및 보안면에서 우수합니다. 그리고 보안 성이란 유능한 디자인 덕분에 멍청한 짓을하지 않는 것이 안전하다는 것을 의미합니다. 또한 크기와 단순성과 관련하여 거의 최적입니다.

더 작고 단순해야하는 경우 BusyBox에는 httpd필요에 맞는 애플릿이 있습니다.

단일 파일 제공과 같은 더 많은 요구 사항을 충족하는지 확실하지 않지만 http 루트에 심볼릭 링크를 넣는 래퍼로이를 수행 할 수 있습니다. 그러나 thttpd를 사용하여이 작업을 수행하는 경우 symlink 제한을 비활성화해야합니다.

(이 질문은 오래되었지만 Google에서 최고의 결과이며 기존 답변은 가벼운 것입니다.)


2
thttpd너무 내가 좋아하는 해답이 될하는 데 사용하지만, 한 제거 "를 가지고, 고아가 되었기 때문에 2011 년에 데비안, 우분투, 레드햇에서 릴리스 중요한 버그를 , 죽은 상류입니다." 더 이상 권장하지 않습니다.
poolie

0

HTTP 파일 서버 ( http://www.rejetto.com/hfs/ ) 라고도하는 HFS를 사용해 볼 수도 있습니다 . Windows 응용 프로그램이지만 WINE을 사용하면 제대로 작동한다고합니다. 유지 보수가 매우 적고 파일 서버가 무엇인지 모르는 완전한 초보자조차도 많은 노력없이 파일 서버를 사용할 수 있습니다. 끌어서 놓기 기능을 지원하며 파일에 액세스 할 수있는 IP 주소를 제어하고 사용자 계정 및 다운로드 속도 제어를 지원할 수도 있습니다.


1
그 질문에 어떻게 대답합니까? 더 구체적으로 말하십시오.
사용자 99572은 괜찮습니다
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.