- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
208 lines
18 KiB
Plaintext
208 lines
18 KiB
Plaintext
Episode: 820
|
|
Title: HPR0820: Setting up a web server and a mySQL server
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr0820/hpr0820.mp3
|
|
Transcribed: 2025-10-08 03:01:44
|
|
|
|
---
|
|
|
|
This is HackerPublicRadio, my name is Clad 2 and this is the Networking Basics mini-series
|
|
Part 8.
|
|
In this episode we're going to set up a web server and we're going to do it internally
|
|
because all of the already we've set up a gateway server.
|
|
So we've got the internet going into that and going out to all of our clients on the
|
|
network.
|
|
We've got set up a DHCP server to actually give IP addresses to all of those clients so
|
|
that they can get to each other and get out to the internet and stuff that they've asked
|
|
for on the internet and get back to them.
|
|
And then the episode after that, which was this past episode, most immediate past episode
|
|
in the series, we set up a DNS server with the fine Mara DNS server, DNS server software
|
|
and we also mentioned DNS mask with a queue which apparently is sort of an easier version
|
|
of all that that uses the slash Etsy slash host file to sort of emulate DNS server
|
|
itude and resolve domain names to IP addresses and so on.
|
|
So in this episode we're going to just dive right into web server installation which
|
|
honestly after at this point it's just going to be really simple, you're not even going
|
|
to know what to do with yourself because it's basically practically one step but of course
|
|
we'll make it a little bit more interesting just because we can.
|
|
But yeah, the server, the typical web server install is something like yum install Apache
|
|
or something like that.
|
|
That's pretty much it.
|
|
App to get install Apache 2 and then literally, quite literally, if you go to one of your
|
|
client machines that you've got set up and you type in the address of that server which
|
|
since we have internal DNS running we can just do slacker media dot local and suddenly
|
|
you'll see the old it works greeting.
|
|
So on devian it's a it works page and it's white with black text and it says it works.
|
|
On Fedora you get a fancy it really works page with lots of text and like explanatory
|
|
like here's why you're seeing this page.
|
|
Don't panic this is normal, you know and you got the little Apache logo so it's that
|
|
simple.
|
|
It's done, it works where to find it.
|
|
Almost invariably you will find the slash where you will find the folder that contains
|
|
the stuff that people see when they go on to your website which of course really is just
|
|
a folder on your computer, right?
|
|
Well it's not in your home directory by default it's in slash a var because you want people
|
|
in your home directory slash www and if you look around in there by default at least on
|
|
my red hat install there's a CGI dash bin there's an error folder there's an HTML folder
|
|
and then there's an icons folder got no clue what's in the icons folder but if we go
|
|
into the HTML folder of course we'll see the default stuff in there which right now
|
|
is nothing.
|
|
In fact I believe that it gets forwarded by default to use usr slash share slash, I
|
|
don't know, usr slash local slash share slash httpd I think something like that and the
|
|
point being that too full that until you put stuff into that HTML folder all you're going
|
|
to see is a it works thing but that is where you want to put stuff slash slash www slash
|
|
html and the other thing is that the generic name of the Apache or the web server Damon
|
|
is httpd so on red hat you don't service start you don't service Apache to start you service
|
|
httpd start and that starts your web server now you can go to your website on a browser
|
|
I guess I kind of skipped over that step on Debian it would be slash Etsy slash init dot
|
|
d slash Apache to start so it's not called httpd the name of the Damon is Apache to on Debian
|
|
and the users that Apache runs as are different on red hat systems versus Debian I think on
|
|
Debian it's like wwwdashdata or something whereas on red hat it's Apache I think so that's
|
|
usually quite honestly that's about all there is on slack where it's slash Etsy slash rc dot
|
|
d slash rc dot httpd start and that starts the the http server there's not a whole lot more to it
|
|
if you've ever been on a website and you know how to make stuff appear then you're ready to go
|
|
you just see the end of slash slash www slash html and you can start making all the files that you
|
|
want now realistically you might want to assign like a specific user to to be your web dev user so
|
|
that all the stuff in there is being kind of managed by that one user you might not it really depends
|
|
on how you want to do it I had I I made a group called the the design group and that's the what all
|
|
the web developers all of them are members of that group and so when they sign in they all have
|
|
permission to change all this stuff in slash of our slash www slash html that is also where you'd
|
|
put premade things like droople like a droople install or a wiki media or a tiki tiki wiki tiki
|
|
wiki site whatever you know you dump it into your slash slash www slash html on red hat
|
|
and and then when you go to slackermedy.local in your web browser or 192.168.8.1 port 80 of course
|
|
then that's that's where you're going to to see everything now of course you can do a lot more
|
|
than just that and one of the things that you can do is since we have that DNS server going on
|
|
we can make different domains exist on the same box and one of those places or the place to do
|
|
that would be the slash of our folder and in slash of our slash www you can make folders that are
|
|
the different sites that you want to exist on the web server now you can't just make the folders
|
|
and have them be different sites that's not quite how it works that is something that you have to
|
|
set in the a pattern in the web server that you're running and of course it is important to note
|
|
since I nearly misspoke about it anyway that you can have different web servers running
|
|
or I mean you can use a different web server I'm using Apache because that's the big one that I
|
|
heard about and I just kind of figured well that's a good place to start but there are some really
|
|
cool alternatives out there like engine X and lighty PD that you should check out you know and try
|
|
try running those see if they're better or easier or faster you know whatever whatever you want
|
|
now Apache is kind of nice because it's kind of one of those everyone's going to support Apache right
|
|
I mean you you're not going to find that you made a mistake by configuring Apache you know you're
|
|
going to find pretty much that everyone every prebuilt site out there like WordPress and Drupal
|
|
and all the wikis and whatever you might want to install in this thing they're going to have a
|
|
Apache support out of the box so it's kind of the safe bet in that sense but at the same time it
|
|
is kind of I guess in a way I don't want to say it's the easy way but I mean it's it is the the
|
|
one that it's the most obvious one so the the place that you'd want to configure
|
|
where all the domains live and kind of what's called virtual hosting will actually differ from
|
|
Debian to Red Hat shouldn't really surprise you but it will in Red Hat it is in slash Etsy slash
|
|
httpd slash cunt slash http dot cunt I just put them down to the bottom of the
|
|
at the bottom of the file because that's where their little demo or their sample text was
|
|
and and the syntax is the same as Red Hat and Debian Debian actually does this really nicely
|
|
and they they split it up into sites that are enabled in sites that are actually or sites that
|
|
are available in sites that are actually enabled it's it's really quite nice actually read up a
|
|
little bit on that if you want because it's um to me that's kind of the way that I think maybe
|
|
everyone should do it it's really quite nice um but anyway in the Red Hat config at slash Etsy
|
|
slash whatever I said httpd slash httpd cunt I think they're down at the bottom there's a commented
|
|
outline that says use name based virtual hosting and under that it says name virtual host space
|
|
asterisk port 80 that simply says that um that that Apache is going to be aware if you
|
|
uncomment that line that configuration line that Apache is going to be aware that there are
|
|
more than one site living on this box and that they're virtual sites they're their virtual websites
|
|
because traditionally speaking I guess a website was a server but Apache came along and and maybe
|
|
displaced that notion with these virtual hosts so their virtual hosts uh it's just pretty simple
|
|
syntax for what I do it's and obviously you can find more complex configurations online but
|
|
it's just virtual host well uh less than symbol virtual host camel cased with a capital v in an
|
|
h space asterisk colon 80 greater than symbol uh next line server name again camel cased
|
|
with a capital S and in space www.slackermedia.local next line document root camel cased capital D
|
|
in a capital R space slash var slash www slash html slash www.publicsource.local
|
|
and then the next line you close the virtual host so it's it's a little bit you know xml so you do
|
|
less than slash virtual host camel cased greater than and that closes that that block so you duplicate
|
|
that block as many times as you want pointing each server name to a different directory within
|
|
your um within your within your server it's it's done the same way on debian it's just a different
|
|
file and then you can place the configurations for each of those websites in either server enabled
|
|
or I mean yeah site enabled or site available and you can move that file from one to the other to
|
|
turn the site on or off it's it's really really neat and and quite effective um I've not really
|
|
done anything too fancy on red hat so far in terms of of having multiple sites on on one main box
|
|
but it it is something that uh Apache apparently you know it does really well so I don't know how other
|
|
web servers handle that I'm sure they do I just don't know how but that is how you do it um I don't
|
|
know if we started the server yet I think we did right so it would be slash well it would be
|
|
service httpd start on on red hat or it would be um slash etsy slash in it dot d Apache 2 start
|
|
on on debian and if you would just change a setting you would want to usually restart that service
|
|
you wouldn't want to restart your computer obviously you just do service httpd restart or etsy
|
|
in it d uh Apache 2 restart and that will restart a lot of times if you're restarting a service
|
|
and it fails to restart it means that you've done some typo in the configuration file that you've
|
|
just changed and you need to go back and it's probably you know a misplaced greater than symbol or
|
|
a forgotten semicolon or whatever so the I guess some of the really common associated services that
|
|
people find themselves installing with with Apache for instance would be for instance my SQL server
|
|
my SQL server is a lot like in terms of simplicity and configuration and stuff I equate it in my
|
|
mind to ssh because you simply install you know you do an app to get install my sql dash server
|
|
and it grabs all the associated packages with a my sql database installation that will then
|
|
serve databases to various things including your own Apache server the reason I'm mentioning this
|
|
what one reason is because it's hugely famous I mean the lamp stack it's Linux Apache
|
|
MySQL and PHP so if you're doing this this is like a very common kind of activity and of course I
|
|
mean any any kind of internal site that you're going to install like Drupal or WordPress or whatever
|
|
they're going to require my SQL install or they're going to want something similar like a postgres
|
|
or something like that or MariaDB if you want to stay away from my sql so whatever you can get a
|
|
hold of database server that's a pretty simple install you would again just remember to start the
|
|
service which I typically in real life I remember to do it I just keep forgetting to mention it
|
|
on the show but you do the slash atc slash rcd or init d rather on devian init dot d slash my sql
|
|
d start or on red hat would be service my sql d start whatever so what that gives you is a running
|
|
idling my sql server that you can then do cool stuff with like my sql admin you know create
|
|
you some users or a user and then create a database table and then marry that database table to your
|
|
Drupal install or your WordPress install or your copper mine photo gallery install you know whatever
|
|
you're doing with that server that little local install you can you'll have my sql running on
|
|
local host so if you ever configured one of these through a web host company they usually have their
|
|
my sql servers running on some other box you know somewhere else in their data center or whatever
|
|
and so you're usually putting in on your Drupal configuration when you're going through that you're
|
|
putting in some random string of numbers and letters and then it's you know that's some other
|
|
server and then there's your user name and your password and the database name and the database
|
|
user and the database password all that other stuff same deal here except that it's not going to
|
|
be some weird database on some other server it's going to be the database running on that very
|
|
server so it's local host it's really nice it's very simple to set up and don't forget your
|
|
my sql password obviously there are lots of other kinds of servers that you can set up at this point
|
|
I mean right now what you have got is a server that is the the the center of your local network so
|
|
you can do all kinds of cool stuff you can either install more stuff onto that box if it's nice
|
|
and powerful and you feel really confident about performance or you can set up another box next
|
|
to it and put you know like a jabber jabber D server on that and an MPD server and you can just
|
|
run all kinds of cool services on these things point at it from your DNS records and and assign it
|
|
a DHC an static IP address with DHCP and suddenly you've got people chatting on your own internal
|
|
fully encrypted jabber service while writing wiki interviews on your internal wiki while listening
|
|
to music via your MPD server and it's just really cool it's it's amazing stuff so if you haven't
|
|
done this before and you have if you haven't been following along frantically with with all of
|
|
these episodes um you should you should do that you should set one up if you can possibly swing
|
|
that I mean I know it requires really to to to work the way that I'm describing it it does require
|
|
saw hardware with you know multiple network cards and and a switch and and all these other things
|
|
but you know that's it's kind of worth it if you can get a hold of all that stuff
|
|
and even if you can't you might as well try it with you know either two laptops to so to whatever
|
|
degree you can or you could try it with um with a laptop you know with one network card being the
|
|
ethernet cable and the the one that distributes out the information your wireless card or you could
|
|
try it with with virtual machines as well I've never tried it with virtual machines so I can't really
|
|
advise you on that what I can advise you on is the the role of routers in in this whole setup that
|
|
you've got so I don't know about you I don't have switches lying around um really well now I
|
|
actually do I lied but but back before I got a job where there were switches involved I didn't
|
|
have switches just lying around I had like a little router from Best Buy or whatever um and it
|
|
wasn't actually from Best Buy but you get the idea it was like one of those little cheap plastic
|
|
routers and that's kind of what I used and and that was that and that that little router actually
|
|
was the gateway server and it was the DHCP server I think some of the fans of your routers kind of
|
|
have a little tiny DNS server in there I I don't really remember I remember doing a lot of Etsy
|
|
host stuff so maybe the routers didn't but I bet you can find some with that feature um but the
|
|
the thing about the router now is that it might be handy but you you want to turn off a lot of
|
|
those features because if you think about what it wants to do it wants to do all the things that
|
|
you've just set up so if you if you set up a gateway and you set up DHCP you and and all that stuff
|
|
not you know network address translation the whole nine yards you've got running now on your
|
|
computer you don't need the little plastic router that you got from eBay to try to manage all
|
|
of that for you you actually don't want it to do that because then you're gonna have all kinds
|
|
of interesting network problems that you know everything thinks something else is a different
|
|
server or it's going through one router only to get to another router essentially so it's a lot of
|
|
wasted traffic there so make sure that if you're using a router kind of dumb it down so that it's
|
|
more like just a switch more or less it or basically a true router that you know it doesn't actually
|
|
serve DHCP it's a feature that it does that it really is like when you need your router to just
|
|
work and and magically propagate all these IP addresses for you stuff like that it's a feature
|
|
but in this case since we've kind of overridden that it would it would become a little bit of a
|
|
bother so I hope that this these three episodes in the networking basics series have been
|
|
informative um I will have more I'm sure at a later date but this is about as much as I've got
|
|
for you right now so I hope you enjoy them and I hope that you have fun playing around with servers
|
|
and uh good luck with them
|
|
you have been listening to Hacker Public Radio or Tacker Public Radio does our
|
|
we are a community podcast network the release of shows every weekday on day through friday
|
|
today's show like all our shows was contributed by an HBR listener like yourself
|
|
if you ever consider recording a podcast then visit our website to find out how easy it really is
|
|
Hacker Public Radio was founded by the digital dog pound and new phenomenon computer club
|
|
HBR is funded by the binary revolution at binref.com
|
|
all binref projects are proudly sponsored by linear pages from shared hosting to custom private
|
|
clouds go to lunarpages.com for all your hosting needs unless otherwise stasis today's show is
|
|
released on the creative commons attribution share a live video's own license
|