Check out a free preview of the full Full Stack for Front-End Engineers, v2 course:
The "Server Setup Recap" Lesson is part of the full, Full Stack for Front-End Engineers, v2 course featured in this preview video. Here's what you'd learn in this lesson:

Jem reviews the different server setups taught during this section of the course, shares resources about installing an intrusion detection system, and about best practices when using the Express.js framework.

Get Unlimited Access Now

Transcript from the "Server Setup Recap" Lesson

[00:00:00]
>> Jem Young: That was an adventure, that was a big adventure. So hopefully, you've got it committed, you can now work on it, anybody can work on it, you can tweak your server to your heart's content. And we did it, that was day one. So recap, what did we learn?

[00:00:18] We learned how the Internet works. We learned how to connect an IP to a domain, to a server, to a web server, to an application server, and serve out data. We learned how to configure Nginx a bit, we learned how to configure Git a bit. [LAUGH] If you want some further exploration, you can install Fail2ban.

[00:00:40] Fail2ban, do you remember earlier how we solve the auth log, and like people always trying to get in my server? Fail2ban is a log parcel essentially that it reads a lot of attempts, so if someone attempts to login five times it's invalid, it's gonna ban them completely, so you can't even give a valid login if you want to.

[00:00:58] And that's useful for stopping script those are people that just download scripts and then run them against lots of websites. Fail2ban is pretty useful, I don't go into it in this course, even though I used to, just because for learning, it's probably not that important. But if you're sending it for real production server, you're almost gonna always wanna have Fail2ban or something similar.

[00:01:18] And if you wanna do Express, Express.js has a really good site on performance tips. So it tells you how to tune an Nginx a bit, how to set up caching, tells you all about varnish, Nginx caching, tells you how to set up the headers correctly, things like that.

[00:01:32] That's good reading too, if you want to start messing about with Express and you have not before. But now, we're at the end, so you have a lot more energy now cuz i started off here and now I'm about here, because I'm a night person a 100% all day, I do my best coding at night.

[00:01:46] Are there any questions? Anything you wanna know more about?
>> Speaker 2: I don't know if this will take up too much time, but I removed my node modules, and now I'm wondering how to create that git ignore file?
>> Jem Young: So vi.gitignore.
>> Speaker 2: Mm-hm.
>> Jem Young: Did you manage it there as well, sir?

[00:02:07]
>> Speaker 3: Yeah, I created that, now I'm just stuck trying to push.
>> Jem Young: [LAUGH] I may come just look at your computer, we'll see where we're at.
>> Speaker 2: And then I would put the node models in there-
>> Jem Young: Yes, you add node underscore modules slash-
>> Speaker 2: Slash, okay?
>> Jem Young: For now, as long as you remove those node modules and push that change up to Github, and then add the git ignore firs, it depends on the order you did things.

[00:02:36]
>> Speaker 2: Yeah, remove them, I'm adding this, and then should I [INAUDIBLE] after this?
>> Jem Young: Yeah, to keep it up and running.
>> Speaker 2: Yeah, all right.
>> Jem Young: So a bit of a recap, we learned that it's not magic between the frontend and the backend, in fact, it's a lot of glue work.

[00:02:51] It's a lot of underappreciated work that goes from making a domain connect to a server, and that server serve out an application. And in fact, what we learned was how the Internet works, we learned that there's a domain that looks up the IP address via name server. The name server returns the IP that passes off to a node, and the node passes off, and pass it off, and pass it off, and eventually hits a server.

[00:03:15] That server says, what do I want do this quest we tried to go? And then it passes off to a web server, that was server is Nginx yesterday. And then it passes to an application server, and the application server was Express.js, that's where we all landed. And if you're thinking that was a lot of words, just do this, yeah, it is.

[00:03:35] But today, we're gonna learn some faster ways of doing this, some ways that we don't have to do this manually every single time. But as always, if you're learning something, it's good to go manually step by step by step, so you understand exactly what we do. Yesterday we also learned some command line basic, we came a little familiar, we didn't use the mouse as much.

[00:03:53] And if you're an UI engineer, you probably use the mouse the least of all you ever did possible for an entire day. We also learned how the Internet works, we learned how to create and manage web server, and we created a pretty basic node application. Today, we're gonna do things that are a bit more advanced, and I have a final projects, I think it's gonna be pretty fun.

[00:04:16] [INAUDIBLE] hotel room dot JS because I wrote it last time at hotel room, I think we're gonna have a lot of fun with it. But now, we have this common baseline, so we can do things that are a bit more, I wanna say interesting cuz that I don't wanna make the first part, it seem a little dull but they'll be a bit more advanced.