nodejs를 사용하여 Windows에서 정적 파일 서버를 빌드하십시오. 기본 기초가 없어도 Nodejs 정적 파일 서버를 작성하는 법을 배울 수 있습니다. 이 기사에서는 자세히 소개하고 기본적인 기초가없는 친구에게는 매우 적합합니다.
먼저 nodejs 설치 :
• 새 노드 폴더를 만듭니다
•이 폴더에 node.exe를 다운로드하십시오
• NPM을 다운로드하고 폴더로 압축을 풀어주십시오
• 이제 노드 폴더는 다음과 같습니다
•이 디렉토리를 경로 환경 변수에 추가하십시오
• 명령 줄에서 실행합니다
노드 -vnpm -v
버전 번호를 얻으면 Nodejs 설치가 완료되었음을 의미합니다.
• 명령 줄에서 실행합니다
NPM 구성 세트 레지스트리 https://registry.npm.taobao.org
앞으로 Nodejs 모듈은 Taobao의 NPM 이미지에서 다운로드됩니다.
• 자신의 모듈을 NPM에 게시하려면 먼저 NPM 레지스트리를 다시 전환해야합니다.
NPM 구성 세트 레지스트리 https://registry.npmjs.org
다음으로 정적 파일 서버를 빌드하십시오
• 폴더 서버 생성, 폴더 루트, 서버는 서버의 JS 코드이고 루트는 루트 디렉토리입니다.
• JS 파일 index.js mime.js server.js를 만듭니다
• index.js
var server = require ( './ server.js'); var rootpath = 'root'; var sv = server.create ({port : '9587', 호스트 : '127.0.0.1', root : root path}); • Mime.js var type = { "CSS": "Text/CSS", "Less": "Text/CSS", "Gif": "im "Image/JPEG", "JS": "Text/JavaScript", "JSON": "Application/JSON", "PDF": "Application/PDF", "PNG": "Image/PNG", "SVG": "Image/SVG+XML", "SWF": "Application/X-ShockWave-Flash" "Text/Plain", "Wav": "Audio/X-Wav", "WMA": "Audio/X-MS-Wma", "WMV": "Video/X-MS-WMV", "XML": "Text/XML", "Default": "Text/Plain"}; module.exports = function (ext] || || 'Text/Plain'}• Server.js
var http = require ( 'http'); var path = require ( 'path'); var fs = require ( 'fs'); var url = require ( "url"); var mime = 요구 ( './ mime.js'); function getPromise (cbk) {return (new Prome (CBK);} exports.creats (var var) {opts) {opts). = http.createserver (); 함수 요청 (요청, 응답) {var pathname = decodeUricomponent (url.parse (request.url)); var realpath = path.resolve (path.join (root, pathname)); // 요청 getpromise의 실제 경로 (function,/////////////evestists) 경로는 resolve () : reject ();});}). catch (function () {reswrite (응답, '404', '<h1> 404 </h1> 파일 또는 dir : <h3>' + pathname + '</h3> found') {fs.Stat (realPath, function (err, stat) {// 경로가 파일인지 폴더인지 {err) {eRR) {reject (err);} else {resolve (stat);}}}). {// 경로는 폴더 var defaultindexpath = path.resolve (realPath, 'index.html'); return getPromise (function (resolve, Reject) {fs.Exists (defaultIndexPath, function (isexists)) {if (iSexists) {// index. 폴더, 폴더의 내용 목록이 표시됩니다 (false);}})}). (function (istexistSindex) {if (isexistSindex) {resfile (resfile, defaultindexPath);} else {return getPromise (function, Reject) {fs.ReadDir, function (err) {err (err) {err (err) {err)) {resolve (list);}})}). 그런 다음 (함수 (list) {var pmlist = list.map (function (item) {return (new Promise (function (function (resolve, rebeject)) {fs.stat (path.resolve (realPath, 항목)), 기능 (ERR, IF (err) {console.error (err}); {resolve (`<li> <a href = "$ {item}"> $ {item} </a> </a> </li>`);} else if (stat.isdirectory ()) {resolve (`<li> <a href = "$ {item}/"> $} </a>>}); {resolve ( '');}})});})); promise.all (pmlist) .then (function (linklist) {var links = '<ul>'; links += '<li> <a href = "../"> ../ </a> </li>'; linklist.join ( ''; `<! doctype html> <html> <head> <meta charset = "utf-8"/> <style> {color : blue; text-decoration : none;}. dir a {color : ans Dirpage);});});}). catch (function (err) {reswrite (응답, '500', '기본값', err.toString ());})}})} else {// 파일이나 폴더 reswrite (응답, '404', 'html', '404 </h1 파일 또는 dir : <h1 또는 dir : <h3> '</h3> 찾을 수 없음');}}). catch (function (err) {reswrite (응답, '500', '기본값', err.tostring ());})})})} sv.on ( 'request', request); sv.listen (opts.port, opts.host); retain at (replate, re allut);}; fs.readFile (realPath, function (err, data) {if (err) {reswrite (응답, '500', '기본값', err.toString ());} else {var ext = path.extname (realPath) .Tolocalelowscase (); ext = (ext? ext.slice (1); 'Unknown'; reswrite ') data);}});} 함수 reswrite (응답, 상태 코드, mimekey, data) {response.writehead (restationcode, { 'content-type': mime (mimekey)}); respons.end (data);}• 서버 폴더에서 Shift 버튼을 눌러 누르고 폴더의 빈 영역을 마우스 오른쪽 버튼으로 클릭하고 여기를 클릭하여 명령 창을 열고 명령을 실행하십시오.
노드 index.js
위는 Nodejs를 사용하여 편집기가 소개 한 Windows에서 정적 파일 서버를 빌드하는 간단한 방법입니다. 모든 사람에게 도움이되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 모든 사람에게 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!