Here’s a list of basic requirements you will need to start your own web server.
Choosing the server computer
First things first, you will need to choose a PC to set your server up on. The great thing is, it doesn’t have to be a brand new, top-of-the-line PC. An old office PC or an old spare one you don’t use anymore are excellent candidness for this. This is probably wonderful news, because many of us just happen to have an old one laying around somewhere that will more than likely do just fine. I personally use a Pogoplug V2 for mine, which you can find my tutorial on that in my article How to make a Cheap Home Server using a Pogoplug V2.
You also should consider how you’re planning on using your web server.
If you’re setting it up just to do some testing and to play around with, then your regular everyday PC will do just fine.
But if you’re wanting to make a web server that will host content to the public 24/7, I recommend using a different computer, one that can be dedicated to JUST a web server.
The reason being is when you turn your computer off, your website goes off with it. If your PC freezes, crashes, etc. your website goes down with it. So it’s best to have a computer that can just sit and run 24/7 undisturbed.
I also recommend doing a complete reformat and fresh install of your OS on a dedicated computer just to get any junk off of it and start fresh. You’re less prone to it hanging up and having errors with the OS if you do this.
Can your internet connection handle what you’re wanting to do?
With broadband nowadays, hosting a public web server is a whole LOT easier than the days of trying to do so in a dial-up connection.
Plus, the fact that it’s always connected is exactly what you need for a server.
But even with these nice amazingly fast speeds, there’s still the possibility for trouble depending on what kind of content you plan on hosting.
Things like file servers, video servers, etc. can demand an incredible amount of bandwidth and most home connections are very limited due to the connection speeds.
Simple sites like web pages, blogs, forums, etc. all should work fine on a standard broadband connection.
You need to understand how your connection speed plays a factor, as I’m sure many think “I’ve got a fast download speed, I should be fine”.
Well that’s good for you, but it’s your upload speed that counts when running a server.
When people access your server, they are downloading from you, meaning you are uploading to them and that speed depends on you.
And a 2MBps upload speed doesn’t mean they will get a 2MBps download speed if their connection is fast enough.
Instead, they will get a 200Kbps download speed from a 2MBps upload speed server. There’s some mathematical formula for figuring that out, but I don’t know it and just take my word and trust me on it. I was irritated when I discovered that myself.
Ok, so we’re going to move on and say you’ve got DSL, cable, or fiber optic and you’re connection is good to go, what next?
Your ISP (Internet Service Provider)
Yeap, they can be a problem. For one, many ISP’s are starting to put bandwidth limits on their customers accounts. So therefore, if you have too much traffic or are transferring too much data between your server and the public, you could go over and end up with a nice surprise on your bill next month. I recommend you checking first if you plan on consuming a lot of bandwidth with your server.
The other problem can be from the fact they block the necessary ports needed for your server to connect to the outside world. You can call and check with them if you want, or just wait and see if you have a problem. Some ISP’s aren’t big fans of people running their own servers due to the fact it can put a strain on the network if they’re getting heavy traffic.
In the USA, here’s what I’ve learned about a few of the common providers:
Comcast – This I’ve found is the best yet. They don’t block port 80 and VERY rarely change your IP which means you don’t have to pay for a static IP. They also offer a lot of bandwidth for a reasonable price. I have heard they do have bandwidth usage limitations in some markets, so I’d check first. In my location, they didn’t and it was the best service.
- DSL – This has become very affordable and the most common internet package AT&T customers have for broadband. I verified with them first and they do not block port 80 either. I was going to go with them as a cheaper solution, but they switch your IP about every 8 hours, meaning it’s nearly impossible to keep up with. The only solution is to buy a static IP, which ends up costing about twice the price and you’d be better off with Comcast if that’s an option. Secondly, the upstream speed is substantially slower than cable, so video streaming is pretty much out of the question if you’re hosting your own video files.
- Uverse – The features of Uverse are very nice, especially considering that it’s fiber optic. Right now (at least in my market) I can only get it with the digital TV package, which ends up running me over $100/month for it all. Very expensive and I’m willing to bet they also rotate IPs every 8 hours.
Verizon FIOS – I’m not sure if Verizon offers any other internet options, but when I researched this, they strictly prohibit you from having any sort of web server on the service. It’s in the TOS (Terms of Service) and they also block port 80. You can have a web server if you buy a business package, but once again, it starts getting expensive, especially if you want nice bandwidth.
Ok, so if all the above checks out, you should be good to go!
If you’re going to be accessing your server via www.yourdomain.com, you will need to purchase your domain names and make sure you have access to the name server settings. You can buy a domain name for about $10/yr. I personally recommend using www.bravehost.com because of their hassle-free process , but www.godaddy.com is also another good place to get them.
If you have multiple computers connected to the internet, then you probably already have this. But if you don’t, you will need one. Make SURE you get a router and not a switch or a hub, as they won’t work.
This is probably going to take a while, even with the easy step-by-step guides and tutorials. Installation may not be so bad, but some of the add-ons, like Joomla, can take hours configuring and just learning how to set everything the way you like it. But in the end, you’ll have a web server that you can be proud of because you’re not paying for hosting somewhere else and that’s a wonderful thing.