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" +}