Learn to Code via Tutorials on Repl.it!

← Back to all posts
Web Server Using Node.js
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)

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