digital ocean - Express JS with Node.JS -
i having problem website. running ubuntu 16.04.1 x64 node.js. website, whenever go other pages on website. directs them 404 page though have routing set it.
here server.js file:
var http = require('http'); var express = require('express'); var fs = require('fs'); var bodyparser = require('body-parser'); var app = express(); app.use('/',express.static(__dirname + '/')); app.use(bodyparser.urlencoded({ extended: false })); app.engine('.html', require('ejs').__express); app.set('view engine','html'); app.get('/', function(req, res){ res.render('index'); }); app.get('/resume', function(req, res){ res.render('resume'); }); app.get('/contact', function(req, res){ res.render('contact'); }); app.use(function(req, res) { res.status(404).render('404'); }); app.listen(3000, function () { console.log('listening on port 3000!'); });
for other configurations nginx, has been based guide here: https://code.lengstorf.com/deploy-nodejs-ssl-digitalocean/
based on express static config , route configurations express expecting index.html
, resume.html
, contact.html
in views directory.
by default express res.render() method expects views in ./views
folder: http://expressjs.com/en/4x/api.html#app.render
so project should following:
www |-- views | |-- index.html | |-- resume.html | +-- contact.html |-- node_modules | + ... |-- index.js +-- package.json
Comments
Post a Comment