Learn to Code via Tutorials on Repl.it!

← Back to all posts
Web Server Using Node.js
h
CodingAndMemes (39)

Hello! This is my first tutorial, so if you find any mistakes or anything you want me to fix please say so in the comments!


How To Make A Web Server Using Node.js


Step 1: Include modules

For this we need the 'express' module
we can do this by using these lines of code:

we will also need the 'path' module:


Step 2: Set up the Express router

when the user goes to https://www.[yourwebsite].com/
they will receive index.html.

but what if you want to have different pages?
Duplicate what we did before except, instead of just '/' you use '/yourpage'
or in my case, '/lol'

(you can see it in action here: https://web-server-template--codingandmemes.repl.co/lol )


Side note: Errors

To send the user to a page when an error occurs, it is very similar to the navigation(see a 404 error in action here: https://web-server-template--codingandmemes.repl.co/thisnoexist )
on a 404 Error:

For any other error, you just have to update the res.status. for instance, on a 403 error: res.status(403) and so on, you also along with that have to update the directory: res.sendFile(__dirname + '/403.html');


Set up the Express server to listen on port 3000

And thats it! You can check out my template below!
(Note: if you want your server to stay up 24/7-ish use UptimeRobot. It pings your repl every 5 minutes, or the interval you set it too.)
Here is an example of my uptime robot for my server(its free)

Comments
hotnewtop
Raphtalia (71)

tutorial seems fine but isn’t there already a lot of express tutorials on repl talk already?

ch1ck3n (2874)

thanks for telling me about uptimebot+

Yoplayer1py (12)

@ch1ck3n I used uptime robot in my discord bot. It's useful.

Vandesm14 (2760)

You don't need to use express.Router(), you can just use app: app.get and so on

And also, .htaccess doesn't work with Express, so you don't need that either.

CodingAndMemes (39)

I know that .htaccess doesn’t work with Express, see the “Side note: Errors” section @Vandesm14

CodingAndMemes (39)

Its fine, @Vandesm14 , I did say that criticism was welcome at the top

NotKarmaDev (0)

how do i find my link

MrCSoldier (0)

as simple as typing 'npm init'. Good Tutorial! Ill look back into it if I ever Need to do the same thing again

aguy11 (128)

Hi! This tutorial is really nice. But how do you apply external CSS?

CodingAndMemes (39)

@aguy11 just like a regular HTML file or project on repl.it!

aguy11 (128)

@CodingAndMemes I'll try it again but I'm pretty sure it doesn't work. EDIT: It doesn't work.

ch1ck3n (2874)

@CodingAndMemes make a another nodejs line that puts the css on the server, then link the css file to html.

pluto7073 (0)

@ch1ck3n How would I go about doing that? I tried res.sendFile but it didn't work