Python의 http.server (또는 Python 2 용 SimpleHTTPServer)는 명령 행에서 현재 디렉토리의 컨텐츠를 제공하는 좋은 방법입니다.
python -m http.server
그러나 웹 서버에 관한 한, 그것은 매우 슬로프입니다 …
마치 단일 스레드 인 것처럼 동작하며 RequireJS를 사용하여 JavaScript AMD 모듈을로드 할 때 때때로 시간 초과 오류가 발생합니다. 이미지가없는 간단한 페이지를로드하는 데 5-10 초가 걸릴 수 있습니다.
편리한 빠른 대안은 무엇입니까?
답변
node.js에 대한 http-server 는 매우 편리하며 Python의 SimpleHTTPServer보다 훨씬 빠릅니다. 이는 주로 요청을 직렬화하는 대신 요청을 동시에 처리하기 위해 비동기 IO를 사용하기 때문입니다.
설치
node.js를 설치하지 않았다면 설치하십시오. 그런 다음 노드 패키지 관리자 ( npm)를 사용하여 전체 -g설치 옵션을 사용하여 패키지를 설치하십시오 . Windows를 사용하는 경우 관리자 권한의 프롬프트가 필요하며 Linux / OSX에서는 다음 sudo명령을 원할 것입니다 .
npm install http-server -g
필요한 모든 종속성을 다운로드하고 설치 http-server합니다.
사용하다
이제 모든 디렉토리에서 다음을 입력 할 수 있습니다.
http-server [path] [options]
Path는 선택 사항이며 ./public존재 하는 경우 기본값 이며 그렇지 않은 경우 기본값 ./입니다.
옵션은 [기본값]입니다.
-p수신 대기하는 포트 번호 [8080]-a[localhost]에 바인딩 할 호스트 주소-i디렉토리 색인 페이지 표시 [True]-s또는--silent자동 모드가 콘솔에 기록되지 않습니다-h또는--help도움말 메시지를 표시하고 종료합니다
포트 8000에서 현재 디렉토리를 제공하려면 다음을 입력하십시오.
http-server -p 8000
답변
나는 추천한다 : Twisted ( http://twistedmatrix.com )
파이썬으로 작성되고 오픈 소스 MIT 라이센스에 따라 라이센스가 부여 된 이벤트 중심 네트워킹 엔진.
크로스 플랫폼이며 OS X 10.5 ~ 10.12에 사전 설치되었습니다. 무엇보다도 다음을 사용하여 현재 디렉토리에서 간단한 웹 서버를 시작할 수 있습니다.
twistd -no web --path=.
세부
옵션 설명 (자세한 내용 twistd --help은 참조) :
-n, --nodaemon don't daemonize, don't use default umask of 0077
-o, --no_save do not save state on shutdown
“web”은 Twisted 비동기 엔진 위에서 간단한 웹 서버를 실행하는 명령입니다. 또한 “web”명령 다음에 명령 행 옵션을 사용할 수 있습니다 twistd web --help. 자세한 내용은 다음 을 참조하십시오 .
--path= <path> is either a specific file or a directory to be
set as the root of the web server. Use this if you
have a directory full of HTML, cgi, php3, epy, or rpy
files or any other files that you want to be served up
raw.
다음과 같은 다른 명령들도 있습니다 :
conch A Conch SSH service.
dns A domain name server.
ftp An FTP server.
inetd An inetd(8) replacement.
mail An email service
... etc
설치
우분투
sudo apt-get install python-twisted-web (or python-twisted for the full engine)
Mac OS-X (10.5-10.12에 사전 설치되어 있거나 MacPorts 및 Pip에서 사용 가능)
sudo port install py-twisted
윈도우
installer available for download at http://twistedmatrix.com/
HTTPS
트위스트는 보안 인증서를 사용하여 연결을 암호화 할 수도 있습니다. 기존 --path및 --port(일반 HTTP 용) 옵션 과 함께 사용하십시오 .
twistd -no web -c cert.pem -k privkey.pem --https=4433
답변
가다1.0에는 몇 줄의 코드로 파일을 제공하기위한 http 서버 및 util이 포함되어 있습니다.
package main
import (
"fmt"; "log"; "net/http"
)
func main() {
fmt.Println("Serving files in the current directory on port 8080")
http.Handle("/", http.FileServer(http.Dir(".")))
err := http.ListenAndServe(":8080", nil)
if err != nil {
log.Fatal("ListenAndServe: ", err)
}
}
go run myserver.go또는 실행 파일을 사용하여이 소스를 실행하십시오.go build myserver.go
답변
webfs를 사용해보십시오. 작고 node.js 또는 python과 같은 플랫폼을 설치하는 것에 의존하지 않습니다.
답변
Mercurial을 사용하는 경우 내장 HTTP 서버를 사용할 수 있습니다. 제공하려는 폴더에서 :
hg serve
에서 워드 프로세서 :
export the repository via HTTP
Start a local HTTP repository browser and pull server.
By default, the server logs accesses to stdout and errors to
stderr. Use the "-A" and "-E" options to log to files.
options:
-A --accesslog name of access log file to write to
-d --daemon run server in background
--daemon-pipefds used internally by daemon mode
-E --errorlog name of error log file to write to
-p --port port to listen on (default: 8000)
-a --address address to listen on (default: all interfaces)
--prefix prefix path to serve from (default: server root)
-n --name name to show in web pages (default: working dir)
--webdir-conf name of the webdir config file (serve more than one repo)
--pid-file name of file to write process ID to
--stdio for remote clients
-t --templates web templates to use
--style template style to use
-6 --ipv6 use IPv6 in addition to IPv4
--certificate SSL certificate file
use "hg -v help serve" to show global options
답변
여기 또 다른 것이 있습니다. Chrome 확장 프로그램입니다
설치되면 Chrome에서 새 탭을 만들고 왼쪽 상단 근처의 앱 버튼을 클릭하여 실행할 수 있습니다.
간단한 GUI가 있습니다. 폴더 선택을 클릭 한 다음 http://127.0.0.1:8887링크 를 클릭하십시오

