Browse Source

init¨

master
Jakub Škrabánek 2 years ago
parent
commit
b3acb45cc5
  1. 45
      webserver v2/index.js
  2. 5
      webserver v2/menu.html
  3. 11
      webserver v2/package.json
  4. 14
      webserver v2/pages/about.html
  5. 14
      webserver v2/pages/index.html
  6. 14
      webserver/about.html
  7. 14
      webserver/index.html
  8. 28
      webserver/index.js
  9. 11
      webserver/package.json

45
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("<h1> 404 </h1");
} else {
//když soubor se nalezne
//přečti menu pro stránku a vlož do data
fs.readFile(path.join(__dirname,"menu.html"),"utf8", (err,menuContent) => {
if (err) {
//když se nenalezne ani menu
res.writeHead(500, {"Content-Type" : "text/html"});
res.end("<h1> 500 - Internal Server Error </h1");
} else {
//vlož menu do data stránky
data = data.replace(`<div id="menu-con"></div>`,`<div id="menu-con">${menuContent}</div>`)
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}`);
})

5
webserver v2/menu.html

@ -0,0 +1,5 @@
<ul>
<li><a href="/">HOME</a></li>
<li><a href="about">About</a></li>
<li><a href="youtube">youtube</a></li>
</ul>

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

14
webserver v2/pages/about.html

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>o nás</h1>
<br>
<div id="menu-con"></div>
</body>
</html>

14
webserver v2/pages/index.html

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>Vítejte na WWW stránkách</h1>
<br>
<div id="menu-con"></div>
</body>
</html>

14
webserver/about.html

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>o nás</h1>
<br>
<a href="/">Home</a>
</body>
</html>

14
webserver/index.html

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>Vítejte na WWW stránkách</h1>
<br>
<a href="about.html">About</a>
</body>
</html>

28
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("<h1>404 not Found</h1>");
} 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}`);
})

11
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"
}
Loading…
Cancel
Save