একটি সহজ ওয়েব সার্ভার হিসাবে node.js ব্যবহার করে




server webserver (18)

সম্পাদনা:

Node.js নমুনা অ্যাপ্লিকেশন নোড চ্যাট আপনি চান কার্যকারিতা আছে।
এটা README.textfile
3. ধাপ আপনি খুঁজছেন হয় কি।

ধাপ 1

  • একটি সার্ভার তৈরি করুন যা পোর্ট 800২ এ হ্যালো ওয়ার্ল্ড দিয়ে প্রতিক্রিয়া জানায়

ধাপ ২

  • index.html তৈরি করুন এবং এটি পরিবেশন করুন

ধাপ 3

  • util.js পরিচয় করান
  • যুক্তি পরিবর্তন করুন যাতে কোন স্ট্যাটিক ফাইল পরিবেশিত হয়
  • কোন ফাইল পাওয়া যায় 404 দেখান

Step4

  • jquery 1.4.2.js যোগ করুন
  • client.js যোগ করুন
  • ডাকনাম জন্য ব্যবহারকারী prompt prompt index.html

এখানে server.js

এখানে util.js

আমি একটি খুব সহজ HTTP সার্ভার চালাতে চান। example.com তে প্রতিটি GET অনুরোধ index.html এটিকে পরিবেশিত করা উচিত তবে একটি নিয়মিত HTML পৃষ্ঠা হিসাবে (অর্থাৎ, আপনি যখন সাধারণ ওয়েব পৃষ্ঠাগুলি পড়েন তখনও একই অভিজ্ঞতা)।

নীচের কোডটি ব্যবহার করে, আমি index.html এর বিষয়বস্তু পড়তে পারি। আমি index.html কে একটি নিয়মিত ওয়েব পৃষ্ঠা হিসাবে পরিবেশন করব?

var http = require('http');
var fs = require('fs');
var index = fs.readFileSync('index.html');

http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end(index);
}).listen(9615);

নীচের একটি পরামর্শ জটিল এবং আমাকে ব্যবহার করতে চাই প্রতিটি সংস্থার (CSS, জাভাস্ক্রিপ্ট, চিত্র) ফাইলের জন্য একটি লাইন লিখতে হবে।

আমি কিভাবে কিছু ছবি, সিএসএস এবং জাভাস্ক্রিপ্ট সহ একটি একক HTML পৃষ্ঠা পরিবেশন করতে পারি?


আপনি Node.js এর সাথে Connect এবং ServeStatic ব্যবহার করতে পারেন:

  1. সংযোগ স্থাপন করুন এবং NPM সঙ্গে পরিবেশন স্ট্যাটিক

    $ npm install connect serve-static
  2. এই কন্টেন্ট দিয়ে server.js ফাইল তৈরি করুন:

    var connect = require('connect');
    var serveStatic = require('serve-static');
    connect().use(serveStatic(__dirname)).listen(8080, function(){
        console.log('Server running on 8080...');
    });
  3. Node.js সঙ্গে চালান

    $ node server.js

আপনি এখন http://localhost:8080/yourfile.html যেতে পারেন


আপনি প্রকাশ করতে হবে না। আপনি সংযোগ প্রয়োজন হবে না। Node.js NATIVELY HTTP না। আপনাকে যা করতে হবে তা হল অনুরোধের উপর নির্ভরশীল একটি ফাইল ফেরত দেওয়া:

var http = require('http')
var url = require('url')
var fs = require('fs')

http.createServer(function (request, response) {
    var requestUrl = url.parse(request.url)    
    response.writeHead(200)
    fs.createReadStream(requestUrl.pathname).pipe(response)  // do NOT use fs's sync methods ANYWHERE on production (e.g readFileSync) 
}).listen(9615)    

একটি সম্পূর্ণ উদাহরণ যা নিশ্চিত করে অনুরোধগুলি বেস-ডিরেক্টরি নীচের ফাইলগুলি অ্যাক্সেস করতে পারে না এবং সঠিক ত্রুটি পরিচালনা করে:

var http = require('http')
var url = require('url')
var fs = require('fs')
var path = require('path')
var baseDirectory = __dirname   // or whatever base directory you want

var port = 9615

http.createServer(function (request, response) {
    try {
        var requestUrl = url.parse(request.url)

        // need to use path.normalize so people can't access directories underneath baseDirectory
        var fsPath = baseDirectory+path.normalize(requestUrl.pathname)

        var fileStream = fs.createReadStream(fsPath)
        fileStream.pipe(response)
        fileStream.on('open', function() {
             response.writeHead(200)
        })
        fileStream.on('error',function(e) {
             response.writeHead(404)     // assume the file doesn't exist
             response.end()
        })
   } catch(e) {
        response.writeHead(500)
        response.end()     // end the response so browsers don't hang
        console.log(e.stack)
   }
}).listen(port)

console.log("listening on port "+port)

আমি npm তে একটি আকর্ষণীয় লাইব্রেরি খুঁজে পেয়েছি যা আপনার কাছে কিছু ব্যবহার হতে পারে। এটি মাইম ( npm install mime বা https://github.com/broofa/node-mime ) নামে পরিচিত এবং এটি একটি ফাইলের মাইম টাইপ নির্ধারণ করতে পারে। আমি এটি ব্যবহার করে লিখেছি এমন একটি ওয়েব সার্ভারের একটি উদাহরণ এখানে দেওয়া হল:

var mime = require("mime"),http = require("http"),fs = require("fs");
http.createServer(function (req, resp) {
path  = unescape(__dirname + req.url)
var code = 200
 if(fs.existsSync(path)) {
    if(fs.lstatSync(path).isDirectory()) {
        if(fs.existsSync(path+"index.html")) {
        path += "index.html"
        } else {
            code = 403
            resp.writeHead(code, {"Content-Type": "text/plain"});
            resp.end(code+" "+http.STATUS_CODES[code]+" "+req.url);
        }
    }
    resp.writeHead(code, {"Content-Type": mime.lookup(path)})
    fs.readFile(path, function (e, r) {
    resp.end(r);

})
} else {
    code = 404
    resp.writeHead(code, {"Content-Type":"text/plain"});
    resp.end(code+" "+http.STATUS_CODES[code]+" "+req.url);
}
console.log("GET "+code+" "+http.STATUS_CODES[code]+" "+req.url)
}).listen(9000,"localhost");
console.log("Listening at http://localhost:9000")

এটি কোন নিয়মিত পাঠ্য বা চিত্র ফাইল (.html, .css, .js, .pdf, .jpg, .png, .m4a এবং .mp3 আমি পরীক্ষা করেছি এক্সটেনশানগুলি পরিবেশন করব, কিন্তু এটি তত্ত্বটি সবকিছুর জন্য কাজ করা উচিত)

বিকাশকারী নোট

এখানে আউটপুট একটি উদাহরণ যা আমি পেয়েছিলাম:

Listening at http://localhost:9000
GET 200 OK /cloud
GET 404 Not Found /cloud/favicon.ico
GET 200 OK /cloud/icon.png
GET 200 OK /
GET 200 OK /501.png
GET 200 OK /cloud/manifest.json
GET 200 OK /config.log
GET 200 OK /export1.png
GET 200 OK /Chrome3DGlasses.pdf
GET 200 OK /cloud
GET 200 OK /-1
GET 200 OK /Delta-Vs_for_inner_Solar_System.svg

পাথ নির্মাণ unescape ফাংশন লক্ষ্য করুন। এই স্পেস এবং এনকোডযুক্ত অক্ষর সহ ফাইলের নাম জন্য অনুমতি দেওয়া হয়।


আমি মনে করি আপনি যে অনুপস্থিত অংশটি অনুভব করছেন সেটি হল আপনি প্রেরণ করছেন:

Content-Type: text/plain

আপনি যদি ওয়েব ব্রাউজারটি HTML রেন্ডার করতে চান তবে আপনাকে এটিকে এটিকে পরিবর্তন করতে হবে:

Content-Type: text/html

আমি যা পেয়েছি তা সহজ সংস্করণ অনুসরণ হিসাবে। শিক্ষার উদ্দেশ্যে, এটি সেরা, কারণ এটি কোনও বিমূর্ত লাইব্রেরি ব্যবহার করে না।

var http = require('http'),
url = require('url'),
path = require('path'),
fs = require('fs');

var mimeTypes = {
  "html": "text/html",
  "mp3":"audio/mpeg",
  "mp4":"video/mp4",
  "jpeg": "image/jpeg",
  "jpg": "image/jpeg",
  "png": "image/png",
  "js": "text/javascript",
  "css": "text/css"};

http.createServer(function(req, res) {
    var uri = url.parse(req.url).pathname;
    var filename = path.join(process.cwd(), uri);
    fs.exists(filename, function(exists) {
        if(!exists) {
            console.log("not exists: " + filename);
            res.writeHead(200, {'Content-Type': 'text/plain'});
            res.write('404 Not Found\n');
            res.end();
            return;
        }
        var mimeType = mimeTypes[path.extname(filename).split(".")[1]];
        res.writeHead(200, {'Content-Type':mimeType});

        var fileStream = fs.createReadStream(filename);
        fileStream.pipe(res);

    }); //end path.exists
}).listen(1337);

এখন ব্রাউজার যান এবং নিম্নলিখিত খুলুন:

http://127.0.0.1/image.jpg

এখানে image.jpgএই ফাইল হিসাবে একই ডিরেক্টরি থাকা উচিত। এই কেউ সাহায্য করে :)


ইউআরএলে উল্লিখিত কোনও ফাইল না থাকলে ডিফল্ট HTML ফাইলটি সরবরাহকারী একটি সাধারণ ওয়েব সার্ভার শুরু করতে আমি নীচের কোডটি ব্যবহার করি।

var http = require('http'),
fs = require('fs'),
url = require('url'),
rootFolder = '/views/',
defaultFileName = '/views/5 Tips on improving Programming Logic   Geek Files.htm';


http.createServer(function(req, res){

    var fileName = url.parse(req.url).pathname;
    // If no file name in Url, use default file name
    fileName = (fileName == "/") ? defaultFileName : rootFolder + fileName;

    fs.readFile(__dirname + decodeURIComponent(fileName), 'binary',function(err, content){
        if (content != null && content != '' ){
            res.writeHead(200,{'Content-Length':content.length});
            res.write(content);
        }
        res.end();
    });

}).listen(8800);

এটি সমস্ত এইচটিএমএল কন্টেন্ট সহ সমস্ত জেএস, CSS এবং ইমেজ ফাইল রেন্ডার হবে।

বিবৃতিতে সম্মত হন " কোন সামগ্রী-টাইপ ভুলের চেয়ে ভাল নয় "


উপরের বেশিরভাগ উত্তরগুলি খুব ভালভাবে কীভাবে সামগ্রী সরবরাহ করা হচ্ছে তা বর্ণনা করে। আমি অতিরিক্ত হিসাবে কি খুঁজছেন ডিরেক্টরি ডিরেক্টরি তালিকা যাতে ডিরেক্টরি অন্যান্য বিষয়বস্তু ব্রাউজ করা যাবে। এখানে আরো পাঠকদের জন্য আমার সমাধান:

'use strict';

var finalhandler = require('finalhandler');
var http = require('http');
var serveIndex = require('serve-index');
var serveStatic = require('serve-static');
var appRootDir = require('app-root-dir').get();
var log = require(appRootDir + '/log/bunyan.js');

var PORT = process.env.port || 8097;

// Serve directory indexes for reports folder (with icons)
var index = serveIndex('reports/', {'icons': true});

// Serve up files under the folder
var serve = serveStatic('reports/');

// Create server
var server = http.createServer(function onRequest(req, res){
    var done = finalhandler(req, res);
    serve(req, res, function onNext(err) {
    if (err)
        return done(err);
    index(req, res, done);
    })
});


server.listen(PORT, log.info('Server listening on: ', PORT));

একটি সহজ nodejs server জন্য ইতিমধ্যে কিছু দুর্দান্ত সমাধান আছে। আপনি যদি আপনার ফাইলগুলিতে পরিবর্তনগুলি হিসাবে live-reloading প্রয়োজন হয় তবে আরও একটি সমাধান রয়েছে।

npm install lite-server -g

আপনার ডিরেক্টরি নেভিগেট করুন এবং

lite-server

এটি লাইভ-লোডিংয়ের জন্য আপনার জন্য ব্রাউজার খুলবে।


একটি সামান্য আরো verbose এক্সপ্রেস 4.x সংস্করণ কিন্তু যে ডিরেক্টরি তালিকা, কম্প্রেশন, ক্যাশিং এবং লাইন একটি সংক্ষিপ্ত সংখ্যা লগিং অনুরোধ উপলব্ধ করা হয়

var express = require('express');
var compress = require('compression');
var directory = require('serve-index');
var morgan = require('morgan'); //logging for express

var app = express();

var oneDay = 86400000;

app.use(compress());
app.use(morgan());
app.use(express.static('filesdir', { maxAge: oneDay }));
app.use(directory('filesdir', {'icons': true}))

app.listen(process.env.PORT || 8000);

console.log("Ready To serve files !")

এখানে জটিল উত্তর ক্রেজি পরিমাণ। আপনি যদি নোডজেএসএস ফাইল / ডাটাবেস প্রক্রিয়া করতে চান না তবে আপনার প্রশ্ন অনুসারে স্ট্যাটিক html / css / js / images পরিবেশন করতে চান তবে কেবল pushstate-server মডিউল বা অনুরূপ ইনস্টল করুন;

এখানে একটি "এক মাছ ধরার নৌকা" যা একটি মিনি সাইট তৈরি এবং চালু করবে। শুধু সঠিক ডিরেক্টরির মধ্যে আপনার টার্মিনালে যে সমগ্র ব্লক পেস্ট করুন।

mkdir mysite; \
cd mysite; \
npm install pushstate-server --save; \
mkdir app; \
touch app/index.html; \
echo '<h1>Hello World</h1>' > app/index.html; \
touch server.js; \
echo "var server = require('pushstate-server');server.start({ port: 3000, directory: './app' });" > server.js; \
node server.js

ব্রাউজার খুলুন এবং http: // localhost: 3000 তে যান । সম্পন্ন.

সার্ভারটি ফাইলগুলি পরিবেশন করার জন্য রুট হিসাবে app dir ব্যবহার করবে। অতিরিক্ত সম্পদ যোগ করার জন্য শুধু সেই ডিরেক্টরির মধ্যে তাদের রাখুন।


এটি দ্রুততম সমাধানগুলির মধ্যে একটি যা আমি দ্রুত ওয়েব পেজ দেখতে ব্যবহার করি

sudo npm install ripple-emulator -g

তারপর থেকে শুধু আপনার এইচটিএমএল ফাইল ডিরেক্টরি লিখুন এবং চালান

ripple emulate

তারপর Nexus 7 আড়াআড়ি ডিভাইস পরিবর্তন।


ধাপ 1 (কমান্ড প্রম্পটের ভিতরে [আমি আপনাকে আপনার ফোল্ডারে npm install express করব আশা করি]): npm install express

পদক্ষেপ 2: একটি ফাইল server.js তৈরি করুন

var fs = require("fs");
var host = "127.0.0.1";
var port = 1337;
var express = require("express");

var app = express();
app.use(express.static(__dirname + "/public")); //use static files in ROOT/public folder

app.get("/", function(request, response){ //root dir
    response.send("Hello!!");
});

app.listen(port, host);

দয়া করে নোট করুন, আপনাকে অবশ্যই ওয়াচফিল (বা নডমন ব্যবহার করুন) যোগ করা উচিত। উপরের কোড শুধুমাত্র একটি সহজ সংযোগ সার্ভারের জন্য।

পদক্ষেপ 3: node server.js বা nodemon server.js

আপনি সহজ হোস্ট সহজ HTTP সার্ভার চান তাহলে এখন আরো সহজ পদ্ধতি আছে। npm install -g http-server

এবং আমাদের ডিরেক্টরি খুলুন এবং http-server টাইপ করুন

https://www.npmjs.org/package/http-server


মূলত গ্রহণযোগ্য উত্তর অনুলিপি করা, কিন্তু একটি জেএস ফাইল তৈরি এড়ানো।

$ node
> var connect = require('connect'); connect().use(static('.')).listen(8000);

এটা খুব বিশ্বাসী পাওয়া যায় নি।

হালনাগাদ

এক্সপ্রেস সর্বশেষ সংস্করণ হিসাবে, পরিবেশন স্ট্যাটিক একটি পৃথক মিডলওয়্যার হয়ে ওঠে। পরিবেশন করার জন্য এটি ব্যবহার করুন:

require('http').createServer(require('serve-static')('.')).listen(3000)

প্রথম serve-static ইনস্টল করুন।


সরল Node.js সার্ভার ঠিক আছে:

$ npm install http-server -g

এখন আপনি নিম্নলিখিত কমান্ডের মাধ্যমে একটি সার্ভার চালাতে পারেন:

$ cd MyApp

$ http-server

আপনি যদি NPM 5.2.0 বা নতুন ব্যবহার করেন, তবে আপনি এটি npx দিয়ে ইনস্টল না করে http-server ব্যবহার করতে পারেন। এটি উৎপাদন ব্যবহারের জন্য সুপারিশ করা হয় না, তবে এটি স্থানীয় হোস্টে চলমান সার্ভার দ্রুত পেতে দুর্দান্ত উপায়।

$ npx http-server

অথবা, আপনি এটি চেষ্টা করতে পারেন যা আপনার ওয়েব ব্রাউজারটি খোলে এবং CORS অনুরোধগুলি সক্ষম করে:

$ http-server -o --cors

আরো বিকল্পের জন্য , GitHub- এ http-server জন্য ডকুমেন্টেশনটি দেখুন , বা চালান:

$ http-server --help

নোড জিতুতে অন্যান্য চমৎকার বৈশিষ্ট্য এবং মস্তিষ্ক-মৃত-সহজ স্থাপনার অনেকগুলি।

বৈশিষ্ট্য ফোরস

অবশ্যই আপনি সহজেই আপনার নিজের ফর্ক সঙ্গে বৈশিষ্ট্য আপ করতে পারেন। আপনি হয়তো এই প্রকল্পটির বিদ্যমান 800+ ফর্কগুলির মধ্যে একটিতে এটি ইতিমধ্যেই সম্পন্ন করেছেন:

হালকা সার্ভার: একটি অটো রিফ্রেশ বিকল্প

http-server জন্য একটি চমৎকার বিকল্প light-server । এটি ফাইল দেখার এবং স্বয়ংক্রিয় রিফ্রেশ এবং অন্যান্য অনেক বৈশিষ্ট্য সমর্থন করে।

$ npm install -g light-server 
$ light-server

উইন্ডোজ এক্সপ্লোরার আপনার ডিরেক্টরি প্রসঙ্গ মেনু যোগ করুন

 reg.exe add HKCR\Directory\shell\LightServer\command /ve /t REG_EXPAND_SZ /f /d "\"C:\nodejs\light-server.cmd\" \"-o\" \"-s\" \"%V\""

সহজ JSON REST সার্ভার

আপনি যদি একটি প্রোটোটাইপ প্রজেক্টের জন্য একটি সহজ REST সার্ভার তৈরি করতে চান তবে json-server আপনি যা খুঁজছেন তা হতে পারে।

অটো রিফ্রেশিং সম্পাদক

বেশিরভাগ ওয়েব পৃষ্ঠা সম্পাদক এবং আইডিই সরঞ্জামগুলি এখন একটি ওয়েব সার্ভার অন্তর্ভুক্ত করে যা আপনার উৎস ফাইলগুলি দেখবে এবং তারা পরিবর্তন করার সময় আপনার ওয়েব পৃষ্ঠাটি রিফ্রেশ করবে।

ওপেন সোর্স টেক্সট এডিটর ব্রেকেটগুলি একটি নোডজেএস স্ট্যাটিক ওয়েব সার্ভারও অন্তর্ভুক্ত করে। বন্ধনীগুলিতে যে কোনও HTML ফাইল খুলুন, " লাইভ পূর্বরূপ " টিপুন এবং এটি স্ট্যাটিক সার্ভার শুরু করে এবং আপনার ব্রাউজারটি পৃষ্ঠাতে খোলে। যখনই আপনি HTML ফাইল সম্পাদনা এবং সংরক্ষণ করবেন তখন ব্রাউজার ** স্বয়ংক্রিয় রিফ্রেশ হবে। অভিযোজিত ওয়েব সাইট পরীক্ষার সময় এটি বিশেষ করে দরকারী। একাধিক ব্রাউজার / উইন্ডো মাপ / ডিভাইসে আপনার এইচটিএমএল পৃষ্ঠা খুলুন। আপনার এইচটিএমএল পৃষ্ঠা সংরক্ষণ করুন এবং আপনার অভিযোজিত স্টাফ তারা সমস্ত স্বয়ংক্রিয় রিফ্রেশ হিসাবে কাজ করছে কিনা তা অবিলম্বে দেখুন।

ফোনগ্যাপ ডেভেলপারগণ

যদি আপনি একটি হাইব্রীড মোবাইল অ্যাপ্লিকেশন কোডিং করেন তবে আপনি এটি জানতে আগ্রহী হতে পারেন যে PhoneGap টিম তাদের নতুন ফোনগ্যাপ অ্যাপ দিয়ে বোর্ডে এই স্বয়ংক্রিয় রিফ্রেশ ধারণাটি গ্রহণ করেছে। এটি একটি জেনেরিক মোবাইল অ্যাপ্লিকেশন যা হ'ল HTML5 সার্ভার থেকে ডেভেলপারের সময় ফাইলগুলি লোড করতে পারে। এটি হ'ল আপনি হ'ল JS / CSS / HTML ফাইলগুলি পরিবর্তন করতে যদি হাইব্রিড মোবাইল অ্যাপ্লিকেশানগুলির জন্য আপনার বিকাশের চক্রের ধাপে ধীর কম্পাইল / পদক্ষেপগুলি ত্যাগ করতে পারেন তবে এটি খুব চরম কৌশল। তারা স্ট্যাটিক নোডজেএস ওয়েব সার্ভার (ফাইল ফোন পরিষেবা সরবরাহ করে) প্রদান করে যা ফাইল পরিবর্তনগুলি সনাক্ত করে।

ফোনগ্যাপ + সেনচা টাচ ডেভেলপারগণ

আমি এখন সেনা টাচ এবং jQuery মোবাইল ডেভেলপারদের জন্য ফোনগ্যাপ স্ট্যাটিক সার্ভার এবং ফোনগ্যাপ বিকাশকারী অ্যাপটি ব্যাপকভাবে অভিযোজিত করেছি। সেনা টাচ লাইভ এ এটি পরীক্ষা করে দেখুন। সমর্থন করে --qr QR কোড এবং --লোকালটেলেল আপনার স্ট্যাটিক সার্ভারকে আপনার ডেস্কটপ কম্পিউটার থেকে আপনার ফায়ারওয়ালের বাইরে একটি URL এ প্রক্সি করে! ব্যবহার টন। হাইব্রিড মোবাইল devs জন্য ব্যাপক গতি আপ।

Cordova + আইওনিক ফ্রেমওয়ার্ক বিকাশকারী

স্থানীয় সার্ভার এবং স্বয়ংক্রিয় রিফ্রেশ বৈশিষ্ট্যগুলি ionic সরঞ্জামে বেকড করা হয়। শুধু আপনার অ্যাপ্লিকেশন ফোল্ডার থেকে ionic serve চালানো। আরও ভাল ... ionic serve --lab আইওএস এবং অ্যান্ড্রয়েড উভয় পাশাপাশি ionic serve --lab দেখতে।


দ্রুত উপায়:

var express = require('express');
var app = express();
app.use('/', express.static(__dirname + '/../public')); // ← adjust
app.listen(3000, function() { console.log('listening'); });

তোমার রাস্তা:

var http = require('http');
var fs = require('fs');

http.createServer(function (req, res) {
    console.dir(req.url);

    // will get you  '/' or 'index.html' or 'css/styles.css' ...
    // • you need to isolate extension
    // • have a small mimetype lookup array/object
    // • only there and then reading the file
    // •  delivering it after setting the right content type

    res.writeHead(200, {'Content-Type': 'text/html'});

    res.end('ok');
}).listen(3001);

var http = require('http');
var fs = require('fs');
var index = fs.readFileSync('index.html');

http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    // change the to 'text/plain' to 'text/html' it will work as your index page
    res.end(index);
}).listen(9615);

আমি এই জন্য অনুসন্ধান যেখানে আপনি মনে করেন। আপনার index.html এ, কেবল সাধারণ HTML কোড দিয়ে এটি পূরণ করুন - আপনি যা যা করতে চান তা যেমন:

<html>
    <h1>Hello world</h1>
</html>

var http = require('http');
var fs = require('fs');
var index = fs.readFileSync('index.html');

http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'html'});
res.end(index);
}).listen(9615);

//Just Change The CONTENT TYPE to 'html'




webserver