How to start a website?
Here are the steps required to start a website from A to Z.
Decide what you want to make:-
There are overwhelming many types of sites that you can make. First it can be a business website or personal. Or it can be a blog or a website that contains articles. It may provide some service like hosting, domain registration. It can be a company portal. It can provide some kind of social networking similarly or integrated with facebook, twitter or instagram. And more and more …
Decide how to make it:-
First decide if you want it static (just a collection of HTML pages) or dynamic with a server side language like PHP, ASP, JSP, etc…
If you choose to make a dynamic website you can either choose to use a CMS (Content Management System) to build your website or make it custom with or without a framework.
Mostly using CMS will be best fit and will provide all of your “Content Management” needs with least cost and effort. There are many CMS available that suits different scopes and types of website. For example if you plan to run a blog then go with WordPress like this website, it is very easy and you can get your website running in few hours.
If your website is a forum then go with phpBB it is free and open source and provide all of your forum needs.
If your website is an online shop then go with osCommerce.
If your website is more than a list of articles and will have a more complex functionalities then you can go far and use CMS like Drupal or Joomla. With Drupal or Joomla you can manage users and contents and have complex functionalities like search by features, user roles, custom contents and more. But bear in mind that with WordPress or PHPBB you can create your website your self easily but with Drupal and Joomla there is a probability that you will need to hire a technical person if you are not into the technical stuff because learning curve for Drupal or Joomla is longer than WordPress.
There is the last option is to make your website without a CMS in this case you will need to have a programming skills or hire some persons who have. The most widely used language is PHP but you can choose JSP (Java server pages) or ASP (Active server pages) but bear in mind that each of them will require a different server and/or OS for example with PHP, it is mostly used with LAMP environment (Linux Apache MySQL and PHP). While with JSP you will need a server that supports JSP (i.e. Tomcat). Finally with ASP you will need a windows server with IIS working on it.
Make the design or hire some one to make the design for you
The design of your website is very important because a good design will create trust and guide visitors to take action. Also you have to keep in mind user friendliness because if users find it too hard to use your website they will just give up and stay away from your website. The design usually start with making PSD files using Photoshop then concerting them into HTML/CSS files.
- If you are into design you can create the design your self using Photoshop or any other designing software.
- If you are not into design there are alternative options like hiring some one to do the design for you.
- Or, purchasing paid template.
- Last resort is to use a free online template but keep in mind that other people also could be using the same template so your will lose uniqueness.
Do the technical stuff
If you are making a dynamic website then this is the step to transform your website from a static HTML pages into dynamic website. In this step you will need technical skills to make scripts that manipulate DB. If you choose to use an open source CMS like WordPress or Joomla then you will have to transform your HTML files into a theme or template loadable by the CMS. If you do not have technical skills to do this then either you can hire some one to do it for you or you can search for a supported theme from the start. Wordpess themes
Register a domain
Choose a meaningful yet reasonable short domain name is very essential for your business to work. The registration could from around $10 up to $30 a year.
Rent a host
This is the step to rent some online space to place your website on. Depending on your website size, expected traffic, required control you can choose either to go with shared hosting, VPS hosting or dedicated servers.
Shared hosting provide you with the cheapest solution even there are some free packages available Free Hosting but it have bad side is that it your website will be hosted in a shared environment with other websites. You will have to make sure your website is not accessible by other users. Technically speaking, make sure your website have its owner and group name and no files with all access permissions (777) exception to that can be tmp or cache files. Other point to take care is the IP of your shared hosting, if you have a shared IP then your website will be sharing the IP with other websites check your website IP to make sure it is not blocked for SPAM or any other illegal stuff. Mochahost is a good and trustworthy shared hosting provider, consider trying it.
If you do not like to go to the hassle of having your website in a shared environment then you can go with VPS hosting for a little extra money. VPS hosting hosting can start from as little as $7 a month up to $100 or more depending on the package that you choose. VPS Dime is a good VPS hosting company that provide a high RAM and space for a really cheap price. VPS Hosting
Dedicated hosting gives you the most control and space for the price you pay however expect to pay at least $60 up to few hundred USD monthly. The packages can give you 500 GB space and around 4 GB RAM until several Tera bytes with as much as 32 GB of RAM. Just choose this option is your website is big enough and you expect high volume of traffic like several millions page view per month.
DNS is short for “Domain name server” which means a server to lookup a domain name and return the corresponding IP. You will need this server to connect your domain name with the purchased hosting package or server. If you have choses shared hosting mostly this will be setup for you automatically however if you decided to go with VPS or dedicated hosting then you will need to make this your self. There are two options for you to use.
Install and use a DNS server
This option will give you most professional look because when someone lookup your domain DNS info. will find you have your own domain servers so but it requires many technical stuff and working through SSH which is out of scope of this article so unles you are going to run a hosting company it is advisable to use the next option. Note it you have ordered your VPS or dedicated server with control panel (i.e. cPanel) then the panel will provide you an easy way to configure your DNS server.
Use free DNS Server
This is the most trivial and easy solution to use. Many hosting providers offer free DNS also if you have purchased your domain name from GoDaddy they do offer a free DNS setup for your domain. Also they offer free e-mail package with the domain which is considered a complete domain solution to use.
Upload your website
After purchasing your web hosting package you will receive a SSH or FTP connection information just use any free FTP client software to login and upload your website. notice some free providers do not offer FTP and offer only web based file manager which is not advisable to use because you will have hard time if you decided to move from them.
You can use FileZilla it is free FTP/SFTP client tool which is easy to use.
Configure and Create DB
This is the step where you will use either PHPMyAdmin if available or SSH to create and import your database. Also you will need to write connection configuration into the proper file in your website.
Make sure your website is accessible and working as expected
Now your website is online and should working, just make sure it is working as expected by doing overall test on your website functions like user registration, sending mails etc…
Monetize your website
If you like you can add ads. to your website so you can make money out of it. The best and most trustworthy ads network available is google adsense. You can register and create ads in few steps. Google Adsense
This is an optional step, where you will do it to track the traffic and progress of your website. Google provide an easy to use analytics and we recommend using it. Google analytics
Do SEO and submit your website to Google and other search engines
Although nowadays search engines will find your website without need to inform them explicitly but it is always better to do it your self also it will be a way to track the performance of your website at search and get free tips on imporoving your keywords and site contents. Below is a shot of google webmaster tools used to submit your website. You will need to verify your ownership of the domain name before accessing the webmaster tools features.
Promote you website at social media
Social media is very essential aspect of the nowadays internet and to ensure presence of your website on internet you must have presence at least on facebook, twitter instagram so create accounts and direct your site visitors on there.