From b3acb45cc5034e1397f1db4d6d01d68b4fe4f95f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20=C5=A0krab=C3=A1nek?= Date: Mon, 16 Oct 2023 10:33:33 +0200 Subject: [PATCH] =?UTF-8?q?init=C2=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- webserver v2/index.js | 45 +++++++++++++++++++++++++++++++++++ webserver v2/menu.html | 5 ++++ webserver v2/package.json | 11 +++++++++ webserver v2/pages/about.html | 14 +++++++++++ webserver v2/pages/index.html | 14 +++++++++++ webserver/about.html | 14 +++++++++++ webserver/index.html | 14 +++++++++++ webserver/index.js | 28 ++++++++++++++++++++++ webserver/package.json | 11 +++++++++ 9 files changed, 156 insertions(+) create mode 100644 webserver v2/index.js create mode 100644 webserver v2/menu.html create mode 100644 webserver v2/package.json create mode 100644 webserver v2/pages/about.html create mode 100644 webserver v2/pages/index.html create mode 100644 webserver/about.html create mode 100644 webserver/index.html create mode 100644 webserver/index.js create mode 100644 webserver/package.json diff --git a/webserver v2/index.js b/webserver v2/index.js new file mode 100644 index 0000000..44db263 --- /dev/null +++ b/webserver v2/index.js @@ -0,0 +1,45 @@ +// načtení knihoven +const http = require("http"); +const fs = require("fs"); +const path = require("path"); + +//vytvoření chování serveru +const server = http.createServer((req,res) => { + //přečti url + const filePath = req.url === "/" ? "pages/index.html" : `pages${req.url}.html`; + //načti hledaný soubor + fs.readFile(path.join(__dirname,filePath),"utf8", (err,data) => { + if (req.url == "/youtube") { + res.writeHead(302, {"Location":"https://www.youtube.com"}); + res.end(); + } + if (err) { + //když se nenalezne soubor + res.writeHead(404, {"Content-Type" : "text/html"}); + res.end("

404 { + if (err) { + //když se nenalezne ani menu + res.writeHead(500, {"Content-Type" : "text/html"}); + res.end("

500 - Internal Server Error `,``) + + res.writeHead(200, {"Content-Type" : "text/html"}); + res.end(data); + } + }) + } + }) +}) + +const PORT = 3000; + +//spuštění serveru +server.listen(PORT, () => { + console.log(`Server běží na http://localhost:${PORT}`); +}) diff --git a/webserver v2/menu.html b/webserver v2/menu.html new file mode 100644 index 0000000..c75479a --- /dev/null +++ b/webserver v2/menu.html @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/webserver v2/package.json b/webserver v2/package.json new file mode 100644 index 0000000..ebf3485 --- /dev/null +++ b/webserver v2/package.json @@ -0,0 +1,11 @@ +{ + "name": "webserver", + "version": "1.1.0", + "description": "maly web server", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "KM", + "license": "ISC" +} diff --git a/webserver v2/pages/about.html b/webserver v2/pages/about.html new file mode 100644 index 0000000..3b3c353 --- /dev/null +++ b/webserver v2/pages/about.html @@ -0,0 +1,14 @@ + + + + + + + Document + + +

o nás

+
+ + + \ No newline at end of file diff --git a/webserver v2/pages/index.html b/webserver v2/pages/index.html new file mode 100644 index 0000000..b1ff5f8 --- /dev/null +++ b/webserver v2/pages/index.html @@ -0,0 +1,14 @@ + + + + + + + Document + + +

Vítejte na WWW stránkách

+
+ + + \ No newline at end of file diff --git a/webserver/about.html b/webserver/about.html new file mode 100644 index 0000000..041f04f --- /dev/null +++ b/webserver/about.html @@ -0,0 +1,14 @@ + + + + + + + Document + + +

o nás

+
+ Home + + \ No newline at end of file diff --git a/webserver/index.html b/webserver/index.html new file mode 100644 index 0000000..4fcb024 --- /dev/null +++ b/webserver/index.html @@ -0,0 +1,14 @@ + + + + + + + Document + + +

Vítejte na WWW stránkách

+
+ About + + \ No newline at end of file diff --git a/webserver/index.js b/webserver/index.js new file mode 100644 index 0000000..0c2e98f --- /dev/null +++ b/webserver/index.js @@ -0,0 +1,28 @@ +// načtení knihoven +const http = require("http"); +const fs = require("fs"); +const path = require("path"); + +//vytvoření chování serveru +const server = http.createServer((req,res) => { + const filePath = req.url === "/" ? "index.html" : req.url.slice(1); + + const fullPath = path.join(__dirname,filePath) + + fs.readFile(fullPath, (err, content) => { + if(err) { + res.writeHead(404, {"Content-Type":"text/html"}) + res.end("

404 not Found

"); + } else { + res.writeHead(200, {"Content-Type":"text/html"}) + res.end(content); + } + }) +}) + +const PORT = 3000; + +//spuštění serveru +server.listen(PORT, () => { + console.log(`Server běží na http://localhost:${PORT}`); +}) diff --git a/webserver/package.json b/webserver/package.json new file mode 100644 index 0000000..5bacd30 --- /dev/null +++ b/webserver/package.json @@ -0,0 +1,11 @@ +{ + "name": "webserver", + "version": "1.0.0", + "description": "maly web server", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "KM", + "license": "ISC" +}