So, you’re looking to start your very own web hosting company? You’re looking to find some information about the business, but really don’t feel like searching websites for hours on end or gathering information from various sources. Well, this is exactly why this guide was written, to thoroughly explain every aspect of the business, it’s practices, and beliefs. It will act a cheat sheet, study note, and your best-friend. I will be going through little bits of regulations, terms, guarantees, and the basics of hosting. This document will guide you through customer service, the hosting environment, and basic information.
However, first we must understand what we are offering to the public. We must understand what “Web Hosting” truly means. Consider a common scenario. You’ve completed University, or some other form of post-secondary education, and decide to move out. Whether it be your parent’s basement, a dorm, or a shared house with some roommates, you’re simply sick of it. Well, let’s assume that this happens without you thinking ahead. Let’s assume that you’ve been kicked out. Well, now you have all of your things. Yes, you have loads and loads of things. What do you do? You can’t just leave them on the street. You have to find a home for them and yourself!
Hosting works in the same way. Simply put, it is the housing of your files on the internet. With web hosting, you are able have your own little living space of cyberspace. It is yours and yours alone, what you do with it is completely up to you.
Web hosting allows you to securely place your files on the internet, viewable by anyone whom has an internet connection. This allows you to reach a vast majority of clients, visitors and users. It appeals to a much larger group of audience, and you have a virtually infinite choice of target audience.
Web hosting is the process of which your files are stored on an internationally connected server. This server has an IP address, defined in the Name Servers, stored in your Domain Names. When your domain name is resolved, it contacts the Name Servers, checks the IP address, and directly contacts the server IP Address for your data. The data that is displayed to the end-user are the files you decided to “home” in the Web Hosting.
Customer Service
1. Staff
Staff is important if any webhost would truly like to stand out from the crowd. Everyone knows that the CEO is going to care about customers, but will his staff? Will the people he hires care for customers as much he does? You better make sure they do! Ensure that your employees are patient and that they’ll always respond in a polite manner. Ensure that they know what they’re talking about.
Another important thing to note would be temper. If someone infuriating comes into the live chat system, or emails you hate/ hurtful emails, either ignore, or end the conversation in a professional matter. Never respond back with hatred. It could come back to haunt you. Competitors are constantly thriving to dig up information. Don’t let them catch your bad side. Always be professional, you never know who you’re talking to.
2. Follow Ups
Remember, we are running a service, not a scam. Try to look into what people purchase. If they’re domains forward to your hosting, if they have set everything up, if they’re website is functioning properly. Also, be sure to randomly ask clients if they would need some assistance with anything. Sometimes, others like to do things themselves, but if asked, they will respond back with questions or troubles. Don’t assume that everything is going okay. Generally, as a rule of thumb, always prepare for the worst, and assume that everything is going horribly.
Also, be sure to run regular phone ups. This not only prevents fraudulent users, but also gives your company a chance to get to know your clients. Clients will like your initiative.
3. Quality not Quantity
It doesn’t matter if you can’t spend 24 hours a day in your live help system. Most users would be happy with just email support. As long as you can check your email once, twice or even three times a day, it should work in your favor. Answer any questions your customers may have, and simply move on with your day. Actually answering problems is much better than having a 24/7 staff whom does nothing. Sure having 24/7 QUALITY support is better, but really, as a small business you can’t provide that. You CAN however try your best and answer inquiries. This will be better than most hosts, and actually win over clients. To ensure that you are actually answering client queries, you must prepare. You must know what you’re doing, and you must know every possible angle of what you’re supporting. You need to be on top of your game, and you need to communicate thoroughly.
4. Be Honest
I say this often, and try to always maintain it as a policy. Do NOT keep things a secret. Your clients have a right to know about what’s going on. After all, they ARE paying for it. I make sure to email every client at least once a month, informing him of changes, updates, and new regulations, on a personal level. Inform them of debt (if not too personal), talk to them about updates, what we’re working on, why the server crashed last night, and why the server is laggy today. Make sure to keep everyone up to date. I hate nothing more than not knowing what’s happening with the company that runs your business. Imagine paying for a maid, or rather, cleaning service. Now, how would you feel if they kept you in the blue about what they’re doing to your home?
Also, when you DON’T know something, tell your client. Tell him that you are simply stumped, but are working on the solution. Tell him that you will contact him back by the end of tomorrow with an appropriate fix. Tell him to rest assured. Sure it seems unprofessional, but what are you going to do. Lead them into the wrong direction? NO! You tell them that although you don’t know, you’ll find out. I’m sure it’s an understandable situation, even from the client’s point of view.
The key to this, would be saying so in a professional and well-organized manner.
5. Customer Relations
It is important to get to know your customers on a personal level. Email them once a while, add them to your instant-messaging software, and chat away. Most are actually pretty interesting people. Not only do you make a few friends on the way, but it also builds up a sturdy client base, with loyal customers. Ones that wouldn’t mind referring you to even more people! Hey, why not help a friend out?
Also, when you contact them for the ‘random check-ups’ I mentioned earlier, you can throw in a question or comment to let them know they aren’t just a number to you.
6. Handling Account specific Requests
When handling account specific requests, such as a password reset, the changing of a domain, product upgrade/ downgrade, or even email tweaks, make sure you thoroughly confirm who you’re speaking to is the actual owner of the account. Quickly log into the Billing, or rather, Order system, and check the client’s profile. Go as far as their phone number, address, or even Postal Code. If they submitted false information, ask for credit-card verification, PayPal logs, exact dates of purchases, or anything else that would be of use. Make sure they provide you with at least 2 or 3 correct bits of information until you process their request. Upon verification, tell them to update their profile with the correct information.
Getting Started
1. Server or Reseller
It really depends on how you want to look at this. You can either purchase (1) a reseller account or (2) directly plunge for the server, and really start your business.
1. The Reseller account allows you to save money when you just start out. You are still able to give out the packages you want, however instead of paying $100-200 uselessly for the first fewmonths (as you get your business up) you’ll be paying $20.00/ month. This way, lack of customers will NOT have such a huge impact.
2. Going for the server gives you time to set it up properly. With your own dedicated server you won’t have to worry about other customers on the server bringing it down, for one reason or another. Also, you are given root access over it and you have free reign over which OS and software you have installed
2. Order Forms
Your order form is pretty self explanatory. You’ve probably seen these around. This is where the customer is going to provide all of his contact information, preferences, and essentially, everything that has to do with the web hosting account. You’ll want to create an order form that:
o Asks for the domain name
o Registers it IF not existent.
o Asks for the contact information.
o Phone Number
o Address
o Primary Email
o Account details (cPanel Login / Password)
o Has a choice for Payment Terms
o Annually
o Monthly
o Biannually
o Semi-Annually
o Anything else you may feel that is required
3. Administration System
The administration system is necessary to manage ordered accounts. This is used for such things as, changing invoices, removing clients, upgrading invoices and packages, changing passwords, keep track of revenue, etc. Usually the order form, administrative panel, and billing system come together, or are all features of the same script. An example of this would be WHMCS (www.whmcs.org) or ModernBill (www.modernbill.com). I would highly recommend both of these.
4. End-User Control Panel
The end-user control panel is necessary for allowing your customers to manage their accounts. At the very least, customers should be able to set up their own e-mail accounts, view Website statistics, and manage their files, via a form of on-site file management. In this case, I would highly recommend cPanel/ WHM. They are the leaders in the industry, and a wide range of web hosts already use their services. Clients may be discouraged to order your services, for simply not having this control panel. [note] It is only available on Linux distributions [/note].
cPanel – This is what the end user gets as their control panel. It includes a rich library of features, and is everything any customer could want. It is easy to customize, and make it look like your own.
Here is a screenshot, of what it looks like on the users end. Notice all the different categories, rich tracking devices, mail preferences, security, and much more (I couldn’t fit it all).
WHM – The WHM Panel gives you the opportunity to manage your server. It essentially gives you all of the tools needed to properly take care of your server, your clients, and preferences. It is used to manage cPanel accounts, in the very least. However, it is also used as the Reseller’s main control panel. Again, it used to manage, created, and terminate cPanel accounts. As mentioned, it CAN be used to manage your server; however it would require root access, which you’d definitely have.
As you can see, I didn’t use the phrase “Feature Rich” lightly. This one control Panel holds the flexibility of your server. I’ve numbered the categories so I can thoroughly explain their functionalities. As there are quite a bit of them, I won’t be going into too much detail. They are rather straight forward anyway, and on-site documentation is great. This is, of course, the root WHM Panel.
The Root WHM Panel Features
1. Server Configuration – This allows you to manage your root password, and change contact details. This category is also the very first thing you should visit, as it holds the Basic cPanel/WHM setup features. Also, server specifics are “tweaked” via this option.
2. Support – This is used to acquire help with the WHM Root Panel
3. Networking Setup – This is used to create your server’s hostname, manage resolver configs, and assign new name servers an IP Address
4. Security – Provides a ton of security features, configurations, and recommended files. Also includes a Trojan scanner.
5. Server contact – Self explanatory. Set contacts for “Nobody’s mail”, and the root server.
6. Resellers – Manage reseller accounts. Lists current resellers, and also gives you administration over privileges. Believe it or not, you can make a reseller have ROOT privileges. However, I would strongly advise against this.
7. Service configuration – Used to manage all services on the server, such as Exim (Mail), FTP, apache, PHP, and even name servers.
8. Languages – Used to manage all languages that cPanel and the WHM Panel can support. This can be used to create, delete and upload new language files.
9. Backups – Used to manage backups, and general configuration regarding this feature, such as file rollback, time intervals between backups, place of storage, etc.
10. Clustering- Clustering allows you to get keep records synchronized across multiple servers.
11. System Reboot – Reboots your server.
12. Server Status – Displays you server status, such as CPU load, causes, memory usage, and disk space.
13. Account information – Detailed information about all accounts. Shows bandwidth usage, logs, and a detailed list of provided features.
14. Account Functions – Manage every aspect of an account.
15. Multi Account Functions – Same options as “Account functions”, however they apply to more than one account. (You select which ones).
16. Front Page – Install FrontPage extensions
17. Transfers – Copy accounts from other servers.
18. Themes – Manage cPanel themes. Create your own, edit, or brand existing ones.
19. Packages – Configure and manage packages for web hosting clients.
20. DNS Functions – Allows you to manage DNS Zones. Under this function, you are able to add, edit, and delete dns zones and A records.
21. SQL Services – Manage MySQL services. This category allows you to change the MySQL root password, manage all databases under the root account, and allow Access hosts.
22. IP Functions – Add and manage new IP’s on you server. See which user is using what IP.
23. Disk Drives – Used to format and mount newly added hard drives.
24. Software – Used to update and manage Server software.
25. Email – Manage mail queue and view mail statistics.
26. System Health – Kill processes. Also gives you a variety of charts and tables holding specific resource usage data. Through this you can see whom is utilizing more of your CPU
27. cPanel – Manage plugins, addons, news, scripts, and branding.
28. SSL/TLS – Manage SSL certificates
29. Restart Services – Self explanatory. This feature is used to restart any service that may be running on the server(Has to be recognized by the WHM Panel. Examples would be DNS, Apache, FTP, Exim, SSH, POP#, etc.
30. Plugins – Used to manage plugins already installed on your server, compatible with WHM.
5. Billing System
An automated billing system is an absolute must! The billing system should be 100% automated, and work without supervision. Again, as I mentioned above, WHMCS and ModernBill are very good examples of how this is supposed to work. Such scripts automatically issue invoices, suspend accounts, terminate accounts, and add late fees. I, personally, use WHMCS, and am very happy with its flexibility. I will be referring a few times to WHMCS throughout the rest of this document.
6. Technical Support Features
Remember to get some form of Live Support feature. These are increasingly becoming a necessity, and shouldn’t be disregarded. There is, however, an open source solution, so budget shouldn’t be a problem. However, be well aware that the paid ones are much, much better.
Remember that technical support features don’t just include an occasional live chat session. Make sure to offer support tickets, a FAQ (Frequently Asked Questions), documentation, and possibly some tutorials. Also, keep in mind that email support is often VERY useful.
7. Pay per Click
Pay per Click can potentially allow you to reach large numbers of customers. Although you don’t pay to list your site, you do pay when a user clicks on your listing and connects to your site. How, then, do you get your site high on the results lists? You must engage in a bidding war over how much you’re willing to pay for each person who clicks through to your site. The stakes have recently grown pretty high, so be careful about bidding too high. Just because someone clicks through to your Web hosting site, doesn’t mean they’ll convert into a new account. Also be sure to select targeted keywords not competing with everyone else for the same keywords. That is a very difficult game to win.
8. Budget
Lets assume that you were going to purchase everything I am going to recommend, which is:
- Server ($95.00/month)
- Live help Software – http://livehelp.stardevelop.com/ ($119.95 per domain).
- WHMCS – www.whmcs.org ($18.95 Monthly [leased] or $324.95 One Time [Owned])
In Total, you’ll pay a total of 113.95 monthly and 119.85 just once. Or you can choose to pay $444.90 once and $95.00 monthly
OR
- 40 GB Reseller account – http://bldhosting.net/reseller.php ($33.00/month) *Not Oversold*
- Live help Software – http://www.craftysyntax.com/ (Free)
- WHMCS – www.whmcs.org ($18.95 Monthly [leased] )
In total, this alternative would cost only $51.95 monthly.
[Note] I Would HIGHLY recommend getting WHMCS as your billing software. Not that it’s necessary, there are plenty of other options, however it’s very, very user-friendly [Note]
9. Security
Passwords
Make sure that you do not use the same password in any one of your scripts, servers, administrative areas, or even Support sessions. If the same password is used, the whole business could easily be hijacked, through the identification of only one password.
Email Support/ Conversations
Verify all clients, and ask them to identify themselves. Unless they do so, do not carry out any of their requests. This is to ensure that client accounts are not compromised.
If a client provides a false bit of information, make sure you email them back, and ask them to correct it. Also, you may need to ask for passwords or other bits of personal information. This is to ensure that the “hacker” does not run a simple whois scan on the domain, and use the information they get to identify themselves as the rightful owner of the account.
Firewall
Firewalls could be used to block incoming and outgoing attacks. When your server is compromised, which will happen on most occasions, the hacker will upload files in order to set up a daemon or their own service. To prevent this, a firewall with both egress and ingress could be adapted.
Also, software firewalls could be used in order to diminish the pesky monthly fee addon. However, on a very busy server, where CPU and System memory is valuable, a hardware firewall could be adapted.
Backups
Everyone knows what it feels like to lose hours, or even hundreds of hours, of work. Do this for yourself, and more importantly, for your clients. It is up to you to backup client data. If a hacker does take control, who knows what they could do. A backup is always in place.
Home Directory
log into putty and go ahead and run the following commands
chmod 755 /home
Or
CD /
chmod 755 home
PHP
In many cases, PHP can be very risky. All php scripts should be tested for vulnrabilities, while the php installation itself should be used to block out common attacks.
open off
safe_mode = On
safe_mode_gid = Off
open_basedir = directory
safe_mode_exec_dir = directory
expose_php = Off
register_globals = Off
display_errors =Off
log_errors = On
error_log = yourfile
enable_dl off
allow_url_open off
Apache
mod_security – a filter that can watch all requests to see if they match a rule and react by logging or denying the request.
suEXEC – http://httpd.apache.org/docs/1.3/suexec.html – This should explain it.
DDoS
mod_evasive is an evasive maneuvers module for Apache to provide evasive action in the event of an HTTP DoS or DDoS attack or brute force attack. It is also designed to be a detection and network management tool, and can be easily configured to talk to ipchains, firewalls, routers, and etc… mod_evasive presently reports abuses via email and syslog facilities.
Know your Server
Make sure that you know everything about your server, and that you are not left in the dark about anything. Checkout processes and familiarize yourself with them. This will ensure that you notice any silent processes installed by a potential hacker. Also, this may help you identify viruses and potential resource consumers.
Familiarizing yourself with your server also allows you to recognize slower speeds, CPU usage, and an increase in Bandwidth usage, which could all be signs of a hacking attempt, DDoS, or a Brute Force.
The Hosting Environment
1. FTP (File Transfer Protocol)
FTP is the most common term you will encounter in the Hosting Business. It refers to “File Transfer Protocol” or rather, the uploading of files to a specific place. This “Specific place” would usually be our servers, or a hosting account. FTP is used to upload the actual website to the internet. It is used to take files from ones computer, and place them on their accounts. This is essentially what hosting is for, to place files on the internet. There are two ways to upload files to your servers, which are explained below:
File Manager: The file manager is a cPanel feature. It allows users to upload files via a web based control panel. It is used to upload files one-at-a-time and is very inefficient. This should be avoided, and habits should be prevented! However, know that it exists.
FTP Client: An FTP Client is a third party software that automates the pesky custom uploads. This would allow you to upload more than one file at one time. This is what you should encourage clients to use. A very good FTP client can be found here: http://filezilla-project.org/
Note that when connected to either FTP method, a user MUST select the public_html directory, and upload inside of it. This is the only folder that is actually viewable to the internet. When visitors go to www.google.com they view the public_html folder of the domain “google.com”
2. Glossary [Compiled list from the internet]
Name server A server responsible for translating domain names and IP addresses.
Apache One of the world’s most popular Web server programs, Apache was built by a group of open-source programmers and is often used because of its outstanding performance, strong security features and the fact that it is free.
Bandwidth The amount of data that can be transmitted at a given moment to a server. The higher your bandwidth, the larger amount of traffic your site can handle at one time.
CGI Short for Common Gateway Interface, a small script that processes data taken from the user (such as from a form application).
Cgi-bin The directory on a Web server where CGI scripts are stored.
Dedicated hosting A hosting feature that allows a Web site to have its own server. This is more flexible than shared hosting (see below), as webmasters typically have full control over the back end of the server, including choice of OS. Administration, however, is still handled by the hosting company.
Domain names Domain names are the word sequences users enter in their URL bar to visit your site. They are attached to a DNS, short for Domain Naming System, which is used to translate numeric addresses (known as IP, or Internet Protocol, addresses) into words. Each site you visit on the net has a numeric IP address behind its name.
Flash A popular piece of animation software developed by Macromedia. Flash is widely used on the Web because it requires little bandwidth, therefore making it friendly to users with low or high-speed connections.
FrontPage A popular site design and management tool developed by Microsoft.
HTML Short for HyperText Markup Language, the language by which Web servers and client browsers communicate. All server-side functions (such as database processing), although they may be performed in another language, must eventually be output back to the user in HTML.
HTTP Stands for HyperText Transfer Protocol, the protocol by which HTML files move across the Internet. HTTP requires a client browser and an HTTP server (typically a Web server).
IRC Short for Internet Relay Chat, a popular text-base multi-user chat network. (Should be restricted, because of Resource Usage).
MIME Short for Multipurpose Internet Email Extensions, a protocol that allows users to transfer non-text messages like audio, video and images through e-mail.
Mirror sites A mirror site is an exact copy of another FTP or Web site. These are used to offset/spread traffic load on busy Web sites.
Parking All domain names have to be stored on a server in order to be purchased. Most domain registration services will therefore temporarily place a newly purchased name on their servers until a hosting plan is purchased or the owner points the DNS to a different site. This is known as parking.
Propagation The process where name servers throughout the Internet add new domains and remove expired ones from their records. This can be a lengthy process, which is why connecting to a new domain name can often take three or four days.
Reseller A reseller operates components of a Web hosting operation using services, infrastructure and equipment provided by another Web hosting service. Some resellers operate full-fledged businesses using the hardware, software, network and logistical support of another Web hosting firm, while others simply operate as sales agents for other Web hosting companies, offering discounts and providing low-level technical support.
Shared hosting The most basic of Web hosting types. With shared hosting, numerous Web sites are shared on one server. While an economic solution, they typically cannot handle large amounts of storage or traffic.
SMTP Short for Simple Mail Transfer Protocol, a protocol used by mail servers to exchange messages with each other.
SQL Short for Standard Query Language. A standard protocol used to request information from databases. Servers which can handle SQL are known as SQL servers.
SSL Short for Secure Sockets Layer, a protocol developed by Netscape to handle and protect confidential/sensitive information required for e-commerce transactions (like credit card numbers). SSL address usually begin with ‘https’.
Subdomain Typically known as a “domain within a domain”, subdomains are individual Web addresses built upon a pre-existing domain name (such as clientname.yourhostingcompany.com). As a reseller, you will have the option of assigning subdomains to clients if they do not choose to have a domain name.
Telnet A command-line interface that allows remote users and Web servers to communicate.
TLD Short for Top Level Domain, the suffix for major domain names like .com, .net and .org.
UNIX A text-based, multitasking Operating System suitable for Web and network administration. Unix has spawned numerous popular spinoffs, including Linux and FreeBSD. Most Unix-based Operating Systems are open source, meaning the source code to the Operating System has been made freely available to the public for modification. Most Web hosting companies and resellers offer Unix-based hosting in some capacity or other.
Virtual host A shared hosting solution, the most basic of hosting types. Numerous Web sites are shared on one server.
Virtual Private Server (VPS) A virtual private server provides the features of a dedicated server on a machine that is shared by other Web hosting customers. Customers therefore get hosting services that are similar to that of dedicated Web hosting without sacrificing privacy or performance.
WHOIS A central database which tracks all domain name/IP registrations.
XML Short for Extensible Markup Language. XML is a language allowing developers to create their own markup tags. All XML tags are defined by the programmer, and can be interpreted differently in different applications.
PHP PHP, which stands for “Hypertext Preprocessor”, is a server-side, HTML embedded scripting language used to create dynamic Web pages. Much of its syntax is borrowed from C, Java and Perl with some unique features thrown in. The goal of the language is to allow Web developers to write dynamically generated pages quickly. Dynamic means changing. An example of php would be a forum, a login system, or an email form. It is a server-side language, meaning that it can connect to a database and pull up records, thus making such things as profiles, password, usernames, and “Remember Me’s” possible.
Directory A Directory is a folder inside of your public_html folder. So if you have 4 folders inside of there, then you have 4 directories. Just like folders, they are used to organize data. To go to a directory you would have to go to www.domain.com/directoryname
3. Shared vs. Reseller Hosting
Shared Hosting has the ability to have add-on domains along with parked domains. An add on domain offers the ability to run multiple sites off of one shared hosting plan, while a parked domain simply forwards another domain to your main website. Shared hosting, however, is usually intended for one or two websites per account. Lack of control over multiple domains is what limits these types of accounts. All shared Hosting accounts are given the standard cPanel Control Panel. It is used to manage such things as FTP, emails, accounts, traffic, software, etc… Basically, any portion of a website is managed through the use of “cPanel”, the industry standard.
Reseller Hosting, however, is very flexible and is ideal for more than one website, or rather, domain. It allows you to neatly organize accounts, each having their own username, password, domain name, contact info, and preferences. As the name suggests, you are able to resell our resources (at any price), and make a profit for yourself. Reseller accounts include a special control panel, WHM (Web Host Manager), which is used to create, manage, and terminate other accounts. The WHM panel is used to create cPanel accounts, representing shared hosting users.
As well as being accessible by the root admin, WHM is also accessible to users with reseller privileges. Reseller users of WHM have a smaller set of features than the root user, generally limited by the server administrator, to features which they determine will affect their customers’ accounts rather than the server as a whole. From WHM, the server administrator can perform maintenance operations.
4. When a Client Orders
When a client orders, their account will be automatically set-up by your billing software. Nothing needs to be done on your end. However, as mentioned in the Customer Service section, you should really follow up on their order, and ask them if they know what they’re doing, but politely. If they don’t simply walk them through the following:
• Tell them to forward their domain to your own nameservers:
• If they haven’t purchased a domain name, and really don’t know what it is, explain to them. A simple example of a domain name would be www.google.com. This would be a TLD or rather, top level domain. ****. *** is a top level domain. ****. ***. *** isn’t. For example:
Google.com = TLD
google.bldhosting.net = NOT TLD
Tell them to purchase a domain name from www.godaddy.com and explain to them they are in no way affiliated with you. Ensure the client that Godaddy is the leader in the industry. (Which they are). Also mention that it only costs about $9.00 USD / year to purchase a domain.
o However, to find out if their domain is forwarded to your hosting or not, simply do the following:
- Go to the order system.
- Click on” Pending”, or “Active Services”, wherever they may be.
- Find the client.
- Once you have found him, click his domain (not the “www” beside it). This will pull up his profile.
- Now click the “www” beside his domain.
o If an error page comes up, or rather, the usual “File not found”, it means they either haven’t forwarded their domain to our name servers, or they haven’t yet purchased that specific domain. Either way, you’ll have to contact them, and ask them what’s up.
o If a page comes up, then it has brought us one step closer! Remember that when packages are first ordered, and no pages are yet uploaded, you will see an “INDEX OF” page.
• Take the clients username, and add it to the following url:
http://yourhostname.com/~xxxxx where xxxx represents the clients username. Note that the ~ is important.
• If you get the same page as when you go to their domain, this means that they have successfully configured their domain on our server.
o You could also:
o Go to the Order System.
o Click the Utilities Tab
o Click WHOIS Lookup
o And type in the domain.
o Then you can be given two scenarios:
o It returns back saying that the domain is available to purchase. This means that it has not yet been purchased, and therefore you would need to contact the client and tell them what I mentioned before about GoDaddy.
o If it returns saying that it’s not available to purchase, and also provides you with a list of information. Simply find the name servers and see if they’re listed as your hosting company’s.
Note that sometimes, clients could set up their own name servers (it isn’t hard to do), so you’d then be forced to do it the first way. With that being said, if you see different name servers, other than our own, you’d have to double-check the first way, and THEN contact the Client.
This is the only hard part of maintaining your client.
5. When client order (2)
When a client orders, they will be automatically placed in the “Pending Orders” Category. Nothing really happens if you don’t change this, however it should become routine. This basically happens just to make sure that YOU see that you have new customers. All you have to do is “Accept Their Order”.
• To do this, we must go to the Pending orders section, on the order system. When you first log in, a link to it should be present on the column located on the left hand side.
• Click the domain that is pending
• When you are brought a new page, check to see if the payment has been made.
o If the payment has been made click “Accept Order”
o If the payment hasn’t been made, leave and let it live for a bit. (a few more days).
• After a few days, if the payment still hasn’t been processed, simply deny the order, or cancel it.
[note] This is only for the WHMCS order system [/note]
6. .htaccess file
.htaccess files (or “distributed configuration files”) provide a way to make configuration changes on a per-directory basis. A file, containing one or more configuration directives, is placed in a particular document directory, and the directives apply to that directory, and all subdirectories thereof.
This could get confusing so bare with me. Sometimes, a client may want a specific setting on the server. This is to ensure that their scripts are working correctly, or they need to test something out. Well, there’s a reason why they’re not just on, it could be a possible security threat. So instead of just turning on the specific request, or setting, we tell them to put it in their .htaccess file. Basically it’s a file that takes the directives placed inside of it, and acts as if they were placed inside of the main server config, however only for that directory. So, by placing it in the .htaccess file, the user enables it just for him, and the server functions as normal.
A few Commands:
DirectoryIndex filename.html – This changes the directory index to filename.html. What does that mean? Well whenever you navigate to a website, the first page you see is the “DirectoryIndex”. By the server default, this is usually index.html, index.htm, index.php etc… So if index.html does not exist, then index.htm would be taken, and if index.htm does not exist, then index.php would be taken, and so on. However, if both index.php and index.html exist, then index.html would be taken, because it comes first. Get it? Good. But what happens when a client named Billy wants to have Billy.HTML as his homepage? It obviously won’t be listed as the default DirectoryIndex. So, instead we tell him to whip out the .htacess file and type the following: DirectoryIndex Billy.html and we’re done! Note that the .htaccess may or may not exist in every directory. If clients ask you where to find it, simply tell them to create one. Take a blank text document, and rename it “.htaccess”.
•Note that if they have two directories, and In both directories the client wants a custom Directory Index, he would have to place a .htaccess in both directories. As mentioned before, it applies only to a single directory.
PHP Flags – Although php is used for dynamic web pages, certain commercial scripts require a few settings in order to function properly. PHP settings are set in the php.ini file. This is where one would limit what he/she can, or can’t, do with php. Sometimes, some settings may pose a security threat. When a user requires a php setting to be turned on, you could simply tell him to place it in his .htacess file. The syntax is as follows: php_flag php_command value . Naturally, the “php_command” and “value” would be changed; however, the php_flag would always remain the same. An example would be: php_flag register_globals on
There are dozens of commands that could be placed in the .htaccess file, however what I just showed you are the two most common ones. PHP variables and the DirectoryIndex are really all that we should be supporting. Everything else should be the Clients responsibility.
7. Root WHM Panel
This is the CPU/ Memory/ MySQL Usage menu in the Root WHM Panel. It is found under the “Server Status” Header. The link is indicated with a red arrow pointing to it, on the left side of the image. Now let’s get to the table itself. Every day, this table is updated. It shows the resource usage of every account on the server. What I circled in red shows the average for that account. The “ggmmpkco” would be the username of the account. Happyptr.com is obviously the domain, and the cells next to it are %CPU/%MEM/MySQL Process. So, this means that the happyptr.com domain used up an average of 4.21% of our CPU today. How is that possible when we have an average of 0.20% CPU usage? Well, it is important to remember that those numbers are constantly fluctuating, and that they are variables. Generally speaking, we shouldn’t be too concerned with these numbers unless they are written in red by the server itself.
• This means that the server has identified the account to be using too much of our resources.
o In this case, we would suspend the account, and contact the client telling him why.
The three rows encircled in the blue marker represent the top 3 “Resource-Heavy” processes of that account. It tells us the amount of CPU they use, and the origin of the file. Note that the top 2 are cron jobs. This is caused by cPanel, and really it isn’t the clients fault. You will encounter many processes like these, such as “awstas”. This is another resource heavy cPanel function, and should be disregarded.
——————————————————————————————————————————-
This shows us the Load Average on the Server. The First number is the current load average, the second was five minutes ago, and the third is 30 minutes ago. They are constantly updating, and a page refresh is not required.
Also, it’s clickable. It links to a list of processes, organized in a table.
The table is pretty straight forward. However, it is important to realize that nothing can be done about mysql, nobody, named, or root processes. These are the server itself and sometimes may spike depending on what’s going on.
Note that the Pid is clickable. It brings you to another page, which allows you to kill the process. I would recommend never doing this, unless it is absolutely necessary. Make sure however, that the process you want to kill is an actual user and not a root command. Make sure it doesn’t have the owner as either root, mysql, named, or nobody.
8. Databases
Databases are created with the “MySQL Databases” button, and are managed through phpMyAdmin. Users, or rather, “Admins” are assigned to each database through the first option, “MySql Databases”.
This is what phpMyAdmin looks like. The database you want to view is chosen from the left, inside of the drop down menu. Currently we are viewing the emo_livehelp database. As we can see in the main body, there is a table listing things. These would be their fields, and what the actual database contains. You shouldn’t play around with these.
Databases are often used when php is a factor. They are used to store such things as usernames, passwords, email, and credit card information. Our order system uses a database to remember all of our settings, clients, packages, and pricing. Whenever a client orders, it calls the database, and pulls out the records it needs.
Note the little icon in the right-hand corner encircled with red. When that is clicked, the encircled window pops up. It is where all SQL text and commands should be placed. PHP scripts often require a database, and their installation instructions often tell you to copy SQL text into phpMyAdmin. It is done by copy and pasting it into the designated window. This should be done with a blank database.
9. cPanel Features
It is your responsibility to be familiar with the cPanel and all of its features. Please visit this URL for a list of its documentation http://www.cpanel.net/docs/cpanel/
10. Cron Jobs
Cron is the name of program that enables unix users to execute commands or scripts (groups of commands) automatically at a specified time/date.
On screen instructions:
This is a web interface to the crontab program. For example, * * * * * would mean every minute and 0 0 * * * would mean at midnight every night.
Please enter an email address where the cron output will be sent:
NOTE: You will receive a message every time this job runs. Using your main e-mail address is not recommended.
11. What Is Overselling?
Overselling refers to the selling of resources that surpass the assets allocated to the server itself. This is widely used in the Hosting Industry to appeal to the public. It is used to lure unsuspecting customers into thinking that they’re getting “more for their money”. In reality, they are falling into a marketing ploy, and essentially get the exact opposite.
To get a closer look at this matter, let’s go through an example. Let’s say we-are-the-best-hosting.net has one server, because they’re just starting out. In order to compete, they adapt the overselling technique and sell 50GB web space for just $5.00 monthly. To a customer this may seem normal, “everyone’s doing that”. He would essentially be correct, “everyone” IS doing it, however, it sure isn’t normal! Let’s go further in assuming that this server only has 150GB of disk space, and that it costs $90.00 to uphold. Well, if each of we-are-the-best-hosting.net’s customers receives 50GB of web space, ideally, they would only be able to store 3 accounts, and make $15.00 monthly. However, with overselling, they can simply sell 20 accounts, and make $100.00 monthly, leaving them with a profit of $10.00.
Overselling is very useful in the Hosting Industry; however it can have a very large impact on clients. By overselling, this particular web host has promised 20 clients 50GB of web space. Essentially, they have sold 1TB of web space, but can only provide 150GB. In order to ensure that things don’t go haywire, they begin to limit what you can do with your hosting in their ToS. When things get bad, they terminate a few clients, and then they get right back to overselling.
[Note] As a potential web hosting company, it is important that you are aware of this matter, and whatever you decide to do, know your limits. I, myself, have a “No Overselling Policy” assuring clients that they get what they pay for. All you need to do is simply raise your prices so that you earn a bit more than your server actually costs. To do this, figure out how much your paying per GB, and figure out how much you want to charge per GB.
Nothing ticks the rest of us more than a new web host introducing very competitive prices with no intention of staying in the business for longer than a few months. [/Note]
12. Extra information
Just like your home computer, your server has an IP Address. However, your server has more than one. All clients, however, share the same IP Address, unless specified in the order system.
Your server should be set a hostname.
To access any of your user’s websites, you can navigate to the following: www.hostname.net/~username where username is replaced by the client’s actual username, and hostname.net is replaced by your hostname.
Resellers can create their own customers, which have their own cPanel.
No user should be given shell access
This Document was created by Andrei Popa, CEO of BLD Hosting.
This Document may not be resold, edited, or modified in anyway.
Bldhosting.net © 2008











