const localConfig = require('./localConfig.js');
const express = require("express");
const http = require('http');
const https = require('https');
const fs = require('fs');
const app = express();
const httpServer = http.createServer(app);
const httpsServer = https.createServer(app);
httpServer.listen(8080,function(){
console.log('HTTP Server running on port 8080');
});
httpsServer.listen(443,function(){
console.log('HTTPS Server running on port 443');
});
app.get('/',function(req,res){
res.status(200);
res.setHeader('Content-Type','text/html');
res.sendfile('index.php');
//res.send('Hello');
});
app.post('/',function(req,res){
res.status(200);
res.setHeader('Content-Type','text/html');
res.send('Hello');
});
app.get('*',function(req,res){
res.status(404);
res.setHeader('Content-Type','text/plain');
res.send('Not found');
});
app.post('*',function(req,res){
res.status(404);
res.setHeader('Content-Type','text/plain');
res.send('Not found');
});
Если мы возьмем apache + php или nginx + php то там я мог принимать решение отдать контент или нет внутри самого файла.
Например файл index.php может содержать следующий код:
Какой то текст.
<?
if(isset($_GET['test'])){
echo 'Строка из php';
}
?>
Какой то текст.
В этом случае "Какой то текст." будит выведен на страницу как есть а "Строка из php" будит выведена в случае если будит test.
И принимать решение выводить "Строка из php" или не выводить я мог внутри самого файла. Так что если get параметр test отсутствовал в запросе то "Строка из php" вообще будит отсутствовать в ответе от сервера.
А как быть с nodejs? Как я в нем могу написать внутри условие которое будит исполнено на сервере и контент либо будит отображаться либо нет?