소위 일반 대중에게 제공하려는 일일 보고서를 생성하는 스크립트가 있습니다. 문제는 모든 구성과 보안 영향으로 HTTP 서버 (예 : Apache)의 두통 유지 관리에 추가하고 싶지 않다는 것입니다.
완전한 HTTP 서버를 구성하지 않고도 하나의 작은 HTML 페이지를 제공하는 데 도움이되는 간단한 솔루션이 있습니까?
답변
답변
SimpleHTTPServer를 사용해보십시오 :
python -m SimpleHTTPServer
# or the Python 3 equivalent
python3 -m http.server
CWD (예 : index.html)의 http://0.0.0.0:8000 에있는 모든 것을 제공해야합니다 .
답변
http 정적 서버 one-liners 의 큰 목록 이 있습니다 .
이 목록을 얻으려면 솔루션이 다음을 수행해야합니다.
- 현재 디렉토리 (또는 지정된 디렉토리)를 서버 루트로 사용하여 정적 파일 제공
- 한 줄 명령으로 실행할 수 있습니다 (한 번만 사용하면 종속성이 좋습니다)
- 적절한 MIME 유형으로 기본 파일 유형 (html, css, js, 이미지)을 제공하고, 명령 자체 이외의 구성은 필요하지 않습니다 (프레임 워크 별 서버 등이 아님).
- 포 그라운드에서 실행되거나 실행 가능한 모드가 있어야합니다 (예 : 데몬 없음)
예를 들면 다음과 같습니다.
-
twistd -n web -p 8000 --path .
-
얼랭 :
erl -s inets -eval 'inets:start(httpd,[{server_name,"NAME"},{document_root, "."},{server_root, "."},{port, 8000},{mime_types,[{"html","text/html"},{"htm","text/html"},{"js","text/javascript"},{"css","text/css"},{"gif","image/gif"},{"jpg","image/jpeg"},{"jpeg","image/jpeg"},{"png","image/png"}]}]).'
-
cpan Plack plackup -MPlack::App::Directory -e 'Plack::App::Directory->new(root=>".");' -p 8000
-
webfsd -F -p 8000
-
ruby -run -ehttpd . -p8000
답변
node.js
빠르고 가볍고 사용하십시오 .
또는
간단한 nc
netcat 명령을 사용 하여 포트에서 빠른 웹 서버를 시작하고 서버 응답 헤더를 포함한 파일의 내용을 제공하십시오.
Wikipedia에서 참조 :
{ echo -ne "HTTP/1.0 200 OK\r\n\r\n"; cat some.file; } | nc -l -p 8080
{ echo -ne "HTTP/1.0 200 OK\r\nContent-Length: $(wc -c <some.file)\r\n\r\n"; cat some.file; } | nc -l -p 8080
답변
버전 5.4.0부터 PHP에는 내장 웹 서버가 있습니다 .
php -S localhost:8000
다음과 같이 웹 서버의 문서 디렉토리를 지정할 수 있습니다 -t
.
php -S localhost:8000 -t /var/lib/www
네트워크를 통해 서버에 액세스하려면 다음을 수행하십시오.
php -S 0.0.0.0:8000 -t /var/lib/www
답변
노드에는 간단하고 빠르고 가벼운 HTTP 서버 모듈이 있습니다. 설치하기 위해서:
sudo npm install http-server -g
(당신이 가정 node
하고 npm
이미 설치되어 있어야합니다.)
현재 디렉토리를 웹 사이트 루트로 사용하여 실행하려면 다음을 수행하십시오.
http-server
에 서버가 생성됩니다 http://0.0.0.0:8080/
.
답변
SimpleHTTPServer
파이썬에서 사용해보십시오 .
mkdir ~/public_html
command_to_generate_output > ~/public_html/output.txt
(cd ~/public_html; python -c 'import SimpleHTTPServer,BaseHTTPServer; BaseHTTPServer.HTTPServer(("", 8080), SimpleHTTPServer.SimpleHTTPRequestHandler).serve_forever()')
처음 두 줄은 웹 서버에 설정됩니다. 마지막 행은 포트 8080에서 열린 간단한 웹 서버를 작성합니다.이 서버는의 파일 만 제공합니다 ~/public_html
. 해당 디렉토리에 파일이 하나만 있으면 노출 http://localhost:8080/output.txt
됩니다..