Hosting Your Own Web Server: Things to Consider
Are you disgusted or disappointed with your current web
host? Have you switched web hosting companies too many times?
Have you thought of hosting your own website(s)? Do you
have the ambition to control and manage your own web server?
If you answered 'yes' to the questions above, then you
may be ready to host your own sites. This article will give
you things to consider while making the switch.
When being your own web host you should be technically
inclined and have basic knowledge of operating systems,
understand technical terms, understand how to setup a server
environment (such as: DNS, IIS, Apache, etc.) have basic
knowledge of scripting languages and databases (PHP, Perl,
MySQL, etc.), be familiar with current technologies, and
have a basic understanding of hardware and server components.
You should realize the pros & cons. It is one thing
to say, you want to host your own web server and it is another
thing to actually do it.
Pros:
Own sense of responsibility
Awareness level raised (you are at the frontline of all
server happenings)
No monthly hosting fees/accounts
Incompetence no longer exist
Non-shared environment (dedicated server)
Unlimited websites, databases, content, storage, etc.
More bandwidth
No more waiting on someone else time
Complete control
Cons:
Exhausting at times
Faced with server/hardware problems
ISP business account (monthly business/broadband expense)
If server goes down then the website is offline
No technical support team
Software, hardware, and network expenses
There could be many more pros & cons but I've pointed
out some of the major ones. Managing a web server starts
as a full time job, you must constantly monitor its performance
and security. This can sometimes be an exhausting task,
especially if you currently have other responsibilities.
Though, the control you will have over your website and
its performance is rewarding enough. You no longer have
to wait for technical support or approval to install a script
onto the server. You can have as many websites and databases
you want, as long as your hardware can handle it. You no
longer have to go into the discussion forums and search
for the best web host or rant about how much you hate your
current host. You can even begin hosting family & friends
personal websites.
Ask yourself, how technically advanced are you? Many times
you do not have to be a tech guru or anything of the sort,
but you must be very resourceful. You must know how to find
resolutions and answers to problems, quickly and efficiently.
This means you must be internet savvy. Not just the average
surfer, who surfs aimlessly, but you must be the surfer
who can always find what they are looking for. This is key,
because with any server environment you are going to run
into problems and finding the answers are most accomplished
online, using multiple resources, search techniques, and
engines. Sure you can hire someone to fix your problems,
but as we should have learned from the "web hosting",
having someone do it for you isn't always the best option.
Here is a test to see if you are ready to find solutions.
I need a solution to a Microsoft Windows 2003 Server Event
Error - "Event ID: 1056" it's a DHCP Server Error.
How would you search? Go ahead find the solution
.
Did you first go to Google? If you did, that was a nice
effort and common for most, plus a good place to start,
but usually it is best to start at the developers' website.
In this case "microsoft.com" would have been the
first option. Why? Google would more than likely provide
you with the answer from Microsoft and other sources, but
you don't want to get inaccurate information from other
sources. It is common to get information from Microsoft
that would not specifically resolve your problem, but the
developer should always be your first place to search for
the answers. Now search the error again and go to the Microsoft
site and find the solution.
You should had found this link: http://support.microsoft.com/default.aspx?scid=kb;en-us;282001
(Event ID 1056 is Logged after installing DHCP)
What search phrase did you use? It should have been Event
ID: 1056, because the Event ID is the exact error, it pinpoints
your exact problem without broadening your search. Sometimes
the error description is also appropriate to search, just
the error description by itself or in combination with the
Event ID. It depends on your error, your search feedback,
your ability, and technique. For this example I did not
include the error description.
Google or Yahoo! should have been your second option (the
two largest search engines). Then search other smaller and
niche search engines. A good search site which makes use
of Google's operator tags is www.soople.com. Next you should
search within forums and discussion groups. If you are pretty
internet savvy and have a plentiful or few forums and discussion
groups which you frequent then you might actually visit
those places before visiting Google or Yahoo!. You can even
visit those before visiting the developer site since it
is a trusted source, but I wouldn't recommend it, I still
would go to the developers' site first. Okay, so now we
have planted our feet and have familiarized ourselves with
being internet (search) savvy. We are ready to purchase
a server!
When making a server purchase you need to consider a few
things before doing so. What to buy? A top of the line,
quadruple processor, and super fast turbo server is always
ideal, but many times it is not logical or affordable. Therefore,
you need to weigh your options (sensibly).
What to buy?
First determine your budget. Be realistic and expect to
spend at least $2,500 for a low-end server. For a low-end,
quality server with other needed equipment and services
I spent a little over $4,500 easily.
Determine your ISP (broadband) provider. Research and speak
with several different vendors before deciding which broadband
solution best suit your needs. Each provider plan is different
and has different benefits, determine the best one which
fits your needs. Bandwidth should be put into consideration
when choosing your ISP.
A backup device should be purchased before implementing
a server install. The backup device should be double the
server storage space. This could be a standalone unit like
an external hard drive or network storage device or the
backup device could be multiple devices such as: backup
tapes, disc, etc. The reason the backup device should be
larger is because you want to be able to have months worth
of backups and not just weekly or monthly backups. You should
have at least 24 weeks of backups without the concern of
storage space. The backup device or safe deposits should
also be external, removable, and portable. This is so the
backups can be stored in a remote location. Usually for
safe-keeping, in event of a theft or disaster.
Determine your daily traffic goal (the daily traffic which
you hope to see within 1 year - be realistic), divide that
number by the daily traffic you currently receive, and then
multiply that number by 5. That is the total number of GB
space you need. Example:
Daily Traffic Goal: 10,000 (Divided by) Current Daily Traffic:
500 (Times X) 5 = 100GB
In the example you should purchase a 100GB Hard Drive,
it is best to buy 2 or more drives oppose to 1. In this
case, since 50GB drives do not exist or harder to find,
you would buy two 60GB drives giving you a total of 120GB.
2 or more drives are usually needed in a server to configure
the proper RAID option, in some cases 3 or more are needed.
Your backup storage space should be a minimum capacity of
200GB (or 240GB, optional).
Determine your memory. If your web server daily traffic
goal is 500,000 then I would recommend at least 2GB worth
of memory. If it is a shared server, meaning it also has
other server services running on the machine, especially
a mail server or database server (which is not recommended)
then your memory should at least be 3GB or more. Otherwise
you can think small and upgrade as needed, a 1GB memory
stick should be fine for starters.
Determine your network components, which NIC card best
performs under high traffic levels and which router best
performs for your LAN / web server. It is best to get a
router which has a built-in firewall (commonly known as
a "hardware firewall"). Your ISP may provide you
with a router or hardware firewall, this is how they are
able to authorize your traffic on their network. Like a
cable box does for cable television. The router also shares
your IP address with other clients on your network. This
enables you to share your internet connection without having
to get a different IP from your ISP. The hardware firewall
is simply a router with a built-in firewall, which means
it shares your IP address as well as provides added protection
to your network. It blocks bad addresses and ports at the
forefront, before it can even make it to your computer.
It is not recommended to rely only on a hardware firewall
for security, this is just the first step. It is recommended
to also include a software firewall (firewall software which
installs on your computer) and it is recommended to continue
timely security practices, such as updating and patching
your system on a scheduled routine.
Determine your processor speed and power. Regardless of
the amount of traffic you are expecting I would recommend
a dual processor or greater. A dual processor or greater
is best because if your website unexpectedly take off then
you will be well prepared and if you host other server options
or websites on the same server then you will have better
performance. At the time of this writing the 64-bit platform
is the processor direction. 3.8GHz is the most available
speed. If your pockets can afford the latest technologies
then that is ideal, but keep in mind at this particular
time a 64-bit compatible processor is not necessary, without
having many applications that require or deliver on that
platform. That is a lot of speed going no where fast. Also,
remember the power of the 64-bit platform and the greater
the processor speed the more heat it produces, therefore
it must be cooled much more rapidly and efficiently. At
this time a dual 32-bit, 2.8GHz - 3.2GHz processor will
suffice (even that is way more than enough). Though, if
your pockets can afford it then the latest and greatest
would be fine, you will be well prepared. Otherwise, do
like most people and upgrade when the time comes.
Make sure you have a CD/RW drive. A floppy disk drive is
not needed, but I do recommend it for making system restore
disk. The CD/RW drive is needed because you need some type
of removable storage device. You never know when you need
to install a driver from a different location?like a ethernet
driver. An external CD/RW drive is the best option, especially
if you have multiple machines.
Choose your operating system carefully. Choose the vendor
which you are most comfortable with. Do not choose a MAC
if you never used a MAC before. Just because your friend
suggests it and says it is a piece of cake does not mean
it will be for you. You are trying to get a web server online
not re-learn a whole new system. Stay focused and grounded.
If you are comfortable with Microsoft then go with Microsoft,
regardless if the IT person at your job says Microsoft products
are unsecure, Linux or Unix is more secure and much better
for a web server. If you have never used Linux or (especially)
Unix then you will be in for a ride of your life. Your web
server experience will soon become a nightmare and you will
have wasted thousands of dollars on equipment. Go with what
you know, not what you are told. Each platform has its pros
and cons: Microsoft is the user-friendly of them all; Mac
is the web/graphic developer of them all; Linux is the open-source/developers
paradise of them all; Unix is the most secure of them all.
Each of them can be tweaked in ways to provide a solid,
quality platform, it is best to stick with what you already
know.
You should install on your system all the web services
(such as: Apache, IIS, etc.), applications (such as: backup
device software, RAID (Array) Manager), scripting languages
(such as: PHP, Perl, etc.), CGI, Database (such as: MySQL,
Microsoft SQL, etc.), and a web log analyzer (such as: weblog
expert, nihuo, etc.). It is also recommended to perform
system updates, security patches, and firewall installs
and configurations. It is sometimes best to leave the security
installs and configurations for after you have the system
functioning properly to avoid any uncalculated problems.
This way when you install the firewall and something stops
working properly like connecting to your website from outside
your network, you can troubleshoot assuming that it is the
firewall, therefore you would begin by opening port 80 on
the firewall. This method can save you a lot of hassle,
but can sometimes be considered the unsecure method, especially
if you don't have a hardware firewall already in place.
Next, there are a few things to consider before installing
and configuring a server. Where to put it? A secluded, cool
location is ideal, but if this cannot be accomplished then
adjustments can be made.
Where to put it?
Locate a location within your home that is static-free,
we do not want to put the server on the carpet, near curtains,
or anything else that can produce a static reaction. The
reason for this is that you do not want the server internal
components to receive a static charge and short circuit.
The location should be a cool environment, preferably below
room temperature. The reason for a cool area is because
servers (as well as desktop computers) produce large amounts
of heat, the more heat it produces the more it needs to
cool off. If the server is not kept cool, then this can
lead to the server hanging and then eventually crashing.
It's the same result of when a car overheats, it stops running.
You can keep a server internal components cool by keeping
the room cool, additionally you can add more fans to the
server which cools the server internal components, you can
also position a standalone fan directly at the server back
panel and constantly have the fan cool the server internal
components. Depending on how cool your room is and how much
heat your server produces, getting more fans for your server
may be a must and not an option.
It is suggested that the server is at a higher level within
your house (mid-floor), because if it is in the basement
and a flood occurs it could ruin it. If it is in the attic
and the sun beams on the attic for hours the server could
overheat. Mid-floor level is usually the cooler place within
the home, but these recommendations is optional and you
should put the server in the most comfortable and convenient
space following the rest of the guidelines.
Be sure the area you choose is not damp or wet (no leaks,
moisture, near any liquids, or near a window "especially
open"). We all know what can happen when electrical
components get wet.
The server should sit at least 4" inches from the
ground
Be sure a working electrical outlet is near. It is an important
to have a power supply, a good brand is APC. Having a power
supply can save you from electrical outages, blackouts,
and brownouts. Having a power supply helps the server keep
its power, remain stable, and unaffected when there is an
outage, as well it protects your server against electrical
shock. If your outage remains more than 5 minutes it is
recommended to begin backing up anything deemed important
and shut the computer down voluntarily as well as any other
electrical attached devices.
Have a LAN line near and also a phone jack (if you plan
on using the server for any dial-up services). It is not
recommended to use your web service with a dial-up connection.
A broadband connection or greater is recommend for optimal
performance. The LAN line should never come from your wall
and plug directly into your server, it should plug into
a hardware firewall (usually a router with a built-in firewall).
Depending on the size of the server and the internal components
the server may be extremely noisy and loud, especially with
the fans going. It is suggested to have the server in a
secluded location which is not near any peaceful area of
the house, such as: bedroom.
Those are all some basic things to consider before hosting
your own server. Hosting your own server is not an easy
task, but once you have had some time and experience with
it, it becomes a breeze. You will have a better web hosting
experience, you will be more in tune and reliant to your
customers, and you will gain greater technical aptitude.
Hosting your own web server is rewarding, useful, and gives
you the opportunity to host unlimited websites, databases,
services, etc.
If your web traffic becomes too great for your server then
it is recommended to choose an offsite web host. It is recommend
to purchase a dedicated server with a quality web host.
If you choose a server with the above recommendations then
your server traffic should be fine for at least up to 25,000,000
page views per month. It could be greater or less depending
on your operating system, your server configuration, performance,
applications, and services. The point is you should be well
in a position to purchase dedicated server space by the
time your traffic gets too high, because if you are getting
anything close to 1,000,000 page views a month you should
have some competitive advertising or ecommerce income. And
plus, with the knowledge you will gain from the experience
you will be able to support your own server at a dedicated
server (remote) location, thus cutting more overhead.
The biggest disadvantage of hosting your own web server
is the uptime reliability. If your web server powers down
for any reason then your website is offline. Usually web
hosting companies have methods and networks to prevent this
failure from affecting your website. Usually if the system
goes down they have a mirror location where your site is
rejuvenated and doesn't experience much downtime. Some web
hosts do not practice this method or any other fault tolerance.
Imagine if a blackout or power outage occurs, then your
web server could be down for hours or even days, this can
affect your business greatly. There are some hosting companies
who provide mirror web hosting for a small fee, I haven't
found one that is reliable yet. Or you could cross your
fingers and hope for the best, until you are able to host
your server outside your home on a larger network.
Hosting your own server usually is not a money-saving experience.
It sometimes cost more to host your own server, when you
total the up keep and maintenance. The benefit of hosting
your own server is usually a better platform for your customers,
because it is no longer a shared server and it gives you
the ability to make global changes almost instantaneously.
When your customers request more performance or specific
applications, then you will be able to implement this immediately.
Customers like to know that you are in control. If you tell
your customers that the server will be down for maintenance
from 6 a.m. - 7 a.m. then it would be best if that is when
your server is down, not from 5 a.m. - 10 a.m. You know
how your web host will tell you one thing and then you have
to try explaining it to your customer. In the end it will
benefit you to host your own web server as a web business,
this helps you and your customers.
Back
to Tips Page
|