Taghtml

Host Your Friends’ Websites for Fun and Profit! A Reseller Account Video Tutorial

A little over two years ago, I signed up for a reseller account with HostingZoom and I’m very glad I did.  I don’t host very many sites, but the ones I do host pay for my own sites, as well as some non-profit sites that I host for free.  Not only this, but my friends are getting a better price for the same service than they normally would with their own shared account.  Confused?  Too good to be true?  I’ll explain step-by-step how to host websites using WebHost Manger (WHM) and cPanel software available from most webhosting companies that offer reseller plans. (Video tutorial included) This article assumes you already know what a little bit about web hosting.  For example:

  • You have set up a website once or twice before on a web server
  • You have used cPanel
  • You know what a domain name is, and how to buy one

If all of these statements are true, then there is no reason you can’t sell hosting packages to your friends, family and clients.  Follow the steps below, and view the video to get a solid idea of how this is done.

Find a Reseller Account

Probably the most difficult step is finding a decent company with a good reseller program.  Many webhosts offer reseller programs that simply offer you packages at a discount, and allow you to mark up each package you sell.  This is not correct.  A decent reseller program will be one flat rate per month for an unlimited amount of sites. There are dozens of web hosting companies that offer reseller plans.  When choosing a host, the most important part is to find an established company that has been in business for several years, and offers top notch support.  Do not underestimate the importance of support.  Only choose a company that offers the following support options:

  • Telephone Support – Hiring people to talk on the phone is expensive.  A company with phone support is serious.
  • 24/7 Helpdesk – If your site is on the fritz at 3am, you don’t want to wait to find out what the problem might be.
  • End user support – This is important.  End user support means that the hosting company will answer support questions for your customers! This is crucial.  If you set up a website for one of your friends, do you want them calling you at 9pm on a Friday night because they can’t remember their cPanel password? No, give them a support email address and they can open a ticket that will be handled by your hosting company.

Once you’ve found a good, reliable company after doing your homework and comparing costs and features, go ahead and sign up.  I’m not going to list decent prices here, because hosting packages are constantly getting less and less expensive, and deals change by the day.  You’ll need to do some legwork on your own to find the best price. For the purpose of this tutorial, I will be using examples from the company I currently use, HostingZoom.  They have a standard WHM/cPanel setup and many prices and packages to choose from.  Some other companies have customized control panels (such as fasthosts.com).  These may be easier, and offer more or less flexibility.  The only real way to judge is try it for yourself (hopefully with a demo or free trial).

Sign Up For a Reseller Account

For demonstration purposes, I’ll be using ResellerZoom as a reference for this tutorial, although any company that uses Webhost Manager and cPanel (WHM/cPanel) will likely be the same.  If you look at the ResellerZoom site, you will see 6 different plans.   Most companies will offer similar plans.  I avoid Windows because most software I use (WordPress and Drupal) run best on linux, and Windows is often more expensive.  Also, take note that the Budget Reseller plan does not include end-user support or billing software, so that plan is to be avoided.  I chose the Advanced Resller plan because it was cost effective, and at the time the Failover plan was not available.  I may switch to the Failover plan soon, however, to provide increased reliability to myself and my friends.

You’ll likely have to prepay for a few months to get the advertised rate.  I go in 3 month increments.  This gets me a good deal, but doesn’t lock me into a long contract, so if something should go wrong, I can switch companies without losing too much money.

Upon signing up, you will likely recieve an email detailing all the login information.  This will be similar to the information you received when signing up for a normal hosting account, with a few extra bits – namely, the login info for WHM.  There might also be some info regarding custom nameservers and ClientExec or WHMCS, but I’ll get to that in another post.

Log into WHM

Once your account is active, go to http://yoursite.com/whm (or whatever is detailed in your activation email).  You will be prompted for a login and password. You’ll be greeted by a screen similar to the one below.  Don’t worry, it looks daunting, but many of these features you don’t need to bother with.  We’ll start simple, and work our way up from there.

Create a package in WHM

The first step is to create a package.  A hosting package specifies a disk quota, bandwidth quota and a few other specifics that will be set for your clients.  For small websites such as blogs and personal sites, a gigabyte or two of diskspace is usually more than enough.  This will store thousands of photos, hundreds of music files and a handful of video (although I highly suggest using a video hosting site such as YouTube or Vimeo rather than just uploading video files to a website, if possible). Setting bandwidth can be tricky, as you need to predict how much web traffic a site might be getting.  A small website with a few pages, or a personal blog with a few dozen visitors will use a very minimal amount of bandwidth.  Sites with more complex features, such as flash, music/video downloads, file downloads and other large items will use up bandwidth quickly.  Since this article is geared towards hosting sites for friends and family, we don’t need to worry about exceeding bandwidth very often.  Just in case though, try to encourage people to use sites like and to host images, and and to host video, and embed them rather than upload them to their sites.  Always find out what happens if your bandwidth is exceeded.  Some disreputable companies will cancel your account if you exceed the allotted bandwith, while most companies have simple overage charges (like the cell phone companies) if you go over. The rest of the settings, such as Max (FTP, Email, etc…) Accounts, and Max Domains can be set at unlimited (unless restricted by your hosting company).  If you have a friend that needs dozens of FTP accounts or sub-domains, he or she should probably get their own reseller account.  Turn on FrontPage extensions and CGI just in case they are needed, and set the cPanel theme to x3 (the latest greatest, in my opinion). Click the Add button, and you should get a nice message saying the package was added successfully.

Create accounts for friends/family

Now comes the fun part – setting up the individual hosting accounts.  Each of your friends/clients needs their own account.  Start by clicking the Create a New Account link under Account Functions.  Type in the domain name for the website.  The domain name does not need to be purchased, but must be registered elsewhere for the site to become fully active (there is way to access the site before the domain name is registered, and I’ll go over it soon).  Domains can be registered at GoDaddy or name.com for about $10. The username must be 8 letters, and also must be unique to the server that you are on.  If you get an error message, it means someone else on your server already has that username.  WHM will suggest a username based on your domain name. It’s best to stick with that one unless you need something else.  Then pick a nice, safe password (lots of letters, numbers, and valid symbols). Type the email address of your friend/client in the Email field.  This address will receive notifications generated by WHM and cPanel. In the Package section, choose the package that you just created.  This will specify how much space and bandwidth can be used, as well as how many ftp, mysql, domain, etc… accounts they can have.  If you need to tweak anything, click the Select Options Manually box. The Settings section should be changed automatically based on the package you created.  Under DNS Settings check the box that says Use the nameservers specified at the Domain’s Registrar.  This will ensure that GoDaddy or name.com.  Make note of the nameservers, such as ns1.hostingco.com, as this information will be needed by your friend later. Click the Create button, and you’ll be greeted with a big screen full of text…

Send the Details

After creating the account, you’ll be brought to a page full of text.  There will be a section enclosed in a box with the title, New Account Info.  Copy the information in this box and paste it into an email to send to your friend/client.   The rest of the stuff isn’t really that important. You’ll also want to note the cpanel login location, and FTP information.  cPanel can be reached at http://clientdomain.com/cpanel  where clientdomain.com is the domain name of your friend/client.  The FTP address is simply clientdomain.com at port 21.  For cPanel and FTP, the username and password are the specified in the account information.

Set the Nameservers

In order for the site to be online, you’ll need to change the nameserver entries where the domain was registered.  If you registered at GoDaddy you can view the tutorial here. At name.com the information is here.  Usually it just takes a few minutes for these settings to go into affect, but it can take up to 48 hours for the domain to propogate throughout the entire internet.

You’re All Set!

Once the domain has propogated, that’s it!  You friend, grandma, second cousin, office buddy, or whomever now has their own shared hosting account thanks to you!  You can arrange to bill them whenever you like, or just share the space out of the goodness of your heart.  Additional help for WHM is usually provided by your hosting company.  ResellerZoom provides a number of instructional videos, or you can try the official WHM manuals. In a future post, I’ll show you how to use ClientExec to automate account setup and billing, so your friends can sign up themselves and automatically recieve their account information and first invoice via email, without you touching a thing! Neat!

Learn Some Damn HTML (the right way)

Everyone’s seems to be head over heels about standards based HTML/CSS these days.  Web designers and consultancies all seem to tout their ability to create standards compliant and accessible sites.  You just can’t use deprecated tags, and you must separate content from presentation if you want to be a high class webfellow. I remember way back when <center> and <font> were considered perfectly good HTML tags, but today web developers  scowl at these tags like a half eaten egg-roll in the buffet tray – it just shouldn’t be there any more, and anyone who considers partaking is icky.  Time to get serious and learn the correct way of doing things…

Getting Familiar with XHMTL/CSS

I thought I’d do some homework (boring!) and re-learn the HTML that I thought I once learned many moons before.  I fired up my web browser and looked up “HTML and CSS tutorials”.  There were only 22 million results, and the first one had something to do with learning HTML from a dog.  No thanks.

I eventually found the w3 schools, which is a great primer, and has the spectacular feature of trying out bits of code as you learn (learn by doing!).   There are scads of websites that are good for reference, but since I like to learn something new by doing something practical, rather than just reading text, a good tutorial or three suits me just fine. Here are a few links to do some good ol’ research on standards based XHTML/CSS:

Sometimes You Just Need a Good Book

Despite spending hour after hour poring over instructional websites, I didn’t feel like I was pulling it all together, nor in a position to build a fully functioning website.  I needed something comprehensive, something I could put my hands to, and something else that I couldn’t quite put my finger on.  I decided to swallow my pride and buy a book.

My first attempt at learning XHTML/CSS came a few years ago when I was first introduced to WordPress and Drupal.  I wanted to know more about how these tools worked, so I bought .  It was large, comprehensive, and utterly boring.  In short, it was a textbook.  Reading a standard textbook without a teacher to guide you and classmates to discuss the material with is an absolute challenge.  Needless to say, I didn’t get very far.  This was not the case with my most recent purchase – .  This book was spectacular!  It reads like a real person is talking to you, does not take itself seriously, and is based around bite sized projects large enough to teach you something, but short enough to keep your attention.

I did a fair amount of research before selecting the book, and the Head First series has received a lot of praise.  O’Reilly is definitely on to something here, and I’ll probably pick up a few more of their books as I progress in my career.  Rather than regurgitating tons of facts in an enormous tome and tacking on sample problems at the end of each section, the Head First book considers how people learn effectively and applies those educational principles in a way that makes it easier to learn difficult material.  Combine this book with the endless reference material and tutorials on the web, and it’s a snap to get up to speed on the foundations of building websites.

Get Graphics, Get More Practice

After wrapping my head around XHTML and CSS, I went in search of applying this knowledge to building a real site.  In order to have a halfway decent site that people want to look at, it’ll need to be visually appealing.  This requires graphics.

Before coding a site, one will often start with a mockup or wireframe.  These pre-websites are often made in Photoshop, with fancy graphics and what not.  There are a number of decent tutorials that walk through the practice of going from design to code using popular design packages (namely Adobe Photoshop and The GIMP).  Here are a couple good ones:

There is Always More to Learn

This post is a brief summary of what got me started down the path of building standards based code for the web.  There is much more to learn, and techniques are ever changing.  I didn’t even touch on cross-browser compatiblity and the necessary (but troublesome) browser hacks, nor any advanced CSS techniques.  I’ll likely post more info on these in time, as I get a greater handle on things.  I think the most important thing to know when starting to create websites is that not everyone views the web the same way I do.  Some people use Macs, or Internet Explorer 6, or Opera, or a cell phone.  Starting with a solid foundation in standards based code will go a long way towards pleasing a demanding audience.

© 2018 Eric Terpstra

Theme by Anders NorénUp ↑