Tag: server

By Christopher P Wakefield

64px-Virtualbox_logoHow do you manage virtual machines over a network using Oracle Virtualbox? I have been asked this a couple of times recently and today I will show you how. Most of my tutorials on Virtualbox have been along the lines of installing the software onto a system and managing the virtual machines on that system in person. This works well if you have a couple of virtual desktop machines but when you have quite a few servers involved going between each server to carry out maintenance becomes very tedious.

This is where you need a piece of software called phpvirtualbox. Phpvirtualbox is an open source web based front end for Virtualbox which allows you to manage all of your virtual machines over the internet.

linux-mint-logo-128x128So lets take a look at how we set this up. For the basis of this tutorial I will be using Linux Mint 12 and Virtualbox 4.1.4.

We first need to download and install the current version of Virtualbox from the Virtualbox website.

Once installed we need to add a user who will run Virtualbox. Open up a terminal as root and type:

adduser vbox

When asked supply a user password. Next we have to add the vbox user to the vboxusers group in the /etc/group file. So type (as root):

gedit /etc/group

Add vboxusers:x:113:vbox to the file and save.

Once we have finished with Virtualbox it is time to set up our web server. Since this is Linux we will be using Apache. Open up a terminal and install the following packages:





During the install process MySQL will ask you for a root password. Make this something complex but do not forget it!!!

Once installed open up a web browser and type your server address into the address bar and you will see the message IT WORKS! This means that you have a working web server.

Now we need to download, install and configure phpvirtualbox. The current release can be downloaded from the phpvirtualbox website.

I am assuming your downloads go to your Download folder. If not replace Downloads with the location that the file was downloaded to. Open up a terminal and type the following commands one at a time:

cd Downloads

cp -a phpvirtualbox-4.1.7 /var/www/phpvirtualbox

cd /var/www/phpvirtualbox

mv config.php-example config.php

It is now time to configure the config.php file so type:

sudo gedit config.php



* phpVirtualBox example configuration.

* [@version] $Id: config.php-example 366 2011-12-01 19:56:57Z


* rename to config.php and edit as needed.



class phpVBoxConfig {

/* Username / Password for system user that runs VirtualBox */

var $username = ‘vbox’;

var $password = ‘*********’;

/* SOAP URL of vboxwebsrv (not phpVirtualBox’s URL) */

var $location = []

/* Default language. See languages folder for more language options.

* Can also be changed in File -> Preferences -> Language in

* phpVirtualBox.


var $language = ‘en’;


Locate the username and password (BOLD above) and change the password to the one you created earlier. Once done save and exit.

Now we need to make sure that Virtualbox can start at boot time and that means configuring init scripts. Open up a terminal and type:

cd /etc/init.d

and then:

sudo touch /etc/init.d/vbox.start

Now we need to configure the file so type:

sudo gedit /etc/init.d/vbox.start

Copy /usr/bin/vboxwebsrv -b into the file. Save and exit.

That is Virtualbox configured to start at boot time but we now have to enable it so type:

chmod +x /etc/init.d/vbox.start

followed by:

update-rc.d vbox.start defaults

Now it is time to reboot the server. Once it has rebooted go to a web browser and point it to your server address/phpvirtaulbox

You will now be able to manage all the virtual machines on the network from the comfort of your own chair.

Hi I am Chris the owner of ComTech. I provide IT support to both personal and business clients from my base in Alloa, Clackmannanshire. For a list of what I can offer you why not visit my website www.comtech247.net where you will find my blog, testimonials, services and much more. Start supporting a local business today so I can start supporting you.

Tags: , , , , , , ,

CPanel_logoBy Karim K Khan

While most of these providers offer managed data backup services for your website files and database, one of the main considerations that you have to look into is if you can restore lost files using your backup copies in a matter of minutes, instead of submitting a ticket and lose valuable time.

Shared Linux CPanel Web host packages, depending on the provider, can offer you a minimum disk space of 200 MB to a maximum of 10GB. However, it is best to check with the provider how much space would your website need so as not to under utilize or over estimate your disk space requirements. It is better to go for limited disk space than unlimited storage, since this tells you that the provider maintains well-regulated shared hardware resources.

Another important feature is the monthly bandwidth allocation that is implemented into the CPanel Web hosting plan. Most providers will give you the figures in the amount of data transferred per second (bits per second or kilobits per second). However, some providers can now give you more realistic bandwidth allocation figures, depending on your niche and industry. Monthly, these hosts can provide you a minimum bandwidth of 2GB and a maximum of 100GB, with an uptime guarantee of 99.95 percent.

Another important feature is the number of add-ons or sub domains they can offer. Most providers now offer unlimited sub domains, including a reasonable charge for the registration of your domain. Some providers also offer a price freeze, which means you don’t have to worry about your monthly service cost as this would remain the same even if the current trend in the market would recommend your host to change its pricing structure and increase their rates.

Why should you choose a shared Linux CPanel hosting plan when a lot of Web hosting providers can include all or some of these features in their Web hosting packages? The main consideration for a beginner Web developer is the experience that you can gain from using CPanel. With CPanel, you can set your preferences for running or operating your website. With the “Getting Started Wizard”, you can easily manage the various phases of the site from your website files and your company emails down to the applications embedded on your Web pages and its security specifications. Aside from these things, the wizard gives you an informative introduction to the concepts of Web hosting and can also help you configure the basic settings of your website.

Another feature of CPanel is the availability of video tutorials that will help you become a professional CPanel user. These videos can easily be viewed, fast-forwarded and paused to help you learn and be trained in navigating through the many features integrated into CPanel. The wizard includes videos about the creation and modification of a database like MySQL, the creation and management of add-ons and sub domains, the management of email and data backup sessions among others. With CPanel hosting, you can also set up and update your contact information from the preferences wizard to receive communications regarding your subscription. You will be asked to provide a secondary email address or an email address other than your hosting email to ensure that you receive notifications like messages letting you know that you are reaching your disk space limit, maximum bandwidth and email quota for your Web hosting account. You can simply put a check mark on the radio buttons provided and save your notification preferences in the wizard.

The preferences tool in your CPanel also allows you to change its style. The overall look of the CPanel interface can be changed by choosing any of the pre-installed themes to improve the convenience of navigating and controlling all the other tools found in the CPanel interface. Another function that you can use is the change language tool. Depending on the needs of the company, you may prefer to modify the language that is used for the interface. In the “Change Language” tool, you can choose from the list of languages found from the drop down menu and click on the “Change” button.

Another tool that you don’t want to miss in CPanel is the “Shortcuts” icon. With this, you can easily create cPanel links that you can access from your desktop or from an Internet browser, so you can work on your website and Web server files via CPanel using your personal computer or any secure computer anywhere.

These are just some of the tools that you can use with CPanel. Your provider can quickly and easily configure these tools for you and some other specialized tools that can be categorized, depending on its use. For example, tools or wizards are available to manage or modify email accounts. With this tool, you can create an email account, set its mailbox quota and generate a default password. With the password generator of the “Email Accounts” wizard, you will even be given an option of creating how weak or strong the password should be on a scale of 0 to 100.

There is also a tool or a shortcut in CPanel that allows you to perform a virus scan on the entire home directory or just your mailboxes. This can be done with just a click on the radio button on the options found in the wizard, then clicking the “Scan Now” button. Of course, the anti-virus software depends on what the provider chose to incorporate with their plans.

Again, there are so many easy-to-use tools in CPanel that a startup company or Web developer can benefit a lot from. With the help of your CPanel Web hosting provider, these can be made available in a plan, making it convenient to manage and operate a website of your own.

I hope you enjoyed reading my article on shared web hosting. I am a full time blogger and you can find more of my work on my website hosting blog

Tags: , , ,

LAMP stands for: Linux Apache MySQL PHP. It is a popular way to get a professional style web hosting setup on one’s own computer. It’s quite simple to install and provides the major components of what is necessary to design and implement as simple or as complicated a website as one can imagine, just like having your own web hosting right on your own computer to experiment with!

The steps involved to getting a fully operational LAMP setup in Linux Mint 13 Maya are outlined below, complete with clickable screenshots.

Once again my system is as follows:

Intel Core 2 Duo 2.67GHz box with 2 GB of DDR2 RAM, Nvidia 8400GS card, running Linux Mint 13 Maya Xfce 64-bit.

STEP 1 – open a terminal and type sudo apt-get install lamp-server^
(note the carat “^” after server)

Press “Enter”

STEP 2 – Configuring mysql server – It’s always a good idea to change the default password whenever possible, make up a good one and don’t forget it!

…back to installing…

STEP 3 – Done with the terminal install for now

STEP 4 – Test the APACHE installation, open a browser window and type in the address: http://localhost/

Now test the PHP installation, for this we require a test PHP file in /var/www/ called test.php We can use a text editor as root, or as so often is the case we can type a command in the terminal: echo “<?php phpinfo(); ?>” | sudo tee /var/www/test.php

Once you do that, a restart of the Apache web server is required. That can be done by issuing this command: sudo service apache2 restart

After that is done, go back to the web browser and enter this address: http://localhost/test.php/ and you should see a page like this one describing your PHP installation:

STEP 5 – Fixing the Apache server qualified domain name error you may have seen in the terminal is easy enough at this point as well. Enter the following command in the terminal:

echo “ServerName localhost” | sudo tee /etc/apache2/conf.d/fqdn

Then restart the Apache server: sudo service apache2 reload

STEP 6 – Configure MySQL

It’s important to bind MySQL to your localhost IP address. Typically that IP address is, but we can verify that by issuing the following command:

cat /etc/hosts | grep localhost

In my case I saw this:


Next, verify you have the correct BIND address:

cat /etc/mysql/my.cnf | grep bind-address

In my case I have the proper

STEP 7 – Installing PHPMyAdmin

The most convenient way to administer MySQL is by using this handy tool. As we’ve discovered so far, the process involved is quite easy. Back to the terminal we go, this time type: sudo apt-get install libapache2-mod-auth-mysql phpmyadmin

It will go through the familiar downloading process, then a screen will pop up asking which webserver to choose to be automatically configured to run PHPMyAdmin – Please choose Apache2 by pressing the space bar:


The next screen to pop up asks if you would like to use dbconfig-common to facilitate the use of PHPMyAdmin – as the screen shows, you should choose “Yes” unless you are an expert administrator.


Next, enter the MySQL password you entered earlier

Now, enter a password for PHPMyAdmin to register to the database server, then confirm on the next screen

STEP 8 – Testing PHPMyAdmin

Let’s make sure it’s working, type this address in your browser:


You should see this:

Now let’s login with root and the password we created earlier:

 Success! Congratulations, you have successfully installed Apache web server, MySQL, and PHP on your Linux Mint 13 machine. Hopefully the steps involved were straightforward and will reward you with years of fulfilling web development on your own computer.


Tags: , , , , , ,

By Andrew Spalding


Those looking to create a home network may find it is necessary to set up home servers. These are useful in making sure that you are able to use your computers the way that you want to use them when you want to use them.

The two main ways that you can accomplish this is through the use of the Linux Ubuntu home server and the Amahi home server. These servers are designed to provide you with instant access to all of your information throughout your devices.

The Linux system offers those who run the Ubuntu home server fast access which maximizes information sharing across devices. This same accessibility and ease of use is possible whenever using the Amahi Amahi Logohome server.

It is not only easy to set up. It allows you the ability to maintain all your information safely and securely. Best of all, with the help of open source, it is likely that there will be an Ubuntu version of the Amahi home server coming soon.

Features of the Amahi Home Server

Those using the Amahi home server will be able to enjoy these features:

- Outlook Integration

- iCal Integration

- Open Search

- Superb Calendars

- Open Source

- Network Simplification

- Dynamic DNS

- Disk Monitoring

- File Sharing

- Easy Backups

- Virtual Private Network (VPN)

- One-Click Apps

- Disk Pooling

- Media Streaming

These features offer you the ability to access your information wherever and whenever you want to.

Benefits of Using Amahi Home Server

The ability to use a VPN means that you will be able to access all of your files even when you are away from your home and the home network. This will allow you to access files even when you are on the other side of the nation and need them for a meeting.

Being able to back up your system allows you to have protection in case one of the computers on your network crashes. Set up computers to constantly update to the network so that you will have the protection needed in case a system is infected with a virus.

The Amahi server also offers you the ability to organize all of your files throughout your network. This manages your ability to find files whenever necessary. Photos, videos, documents and all other files are easily accessible when using this system.

Sharing files along the system allows you to access videos and pictures from any device on your network. It also allows you to coordinate calendars with everyone in your home quickly and easily. Even calendars which are different systems are accessible through the network.

Protecting your information from unauthorized access also allows you to have better protection for all of your information. Better security is possible as all information runs through the reinforced firewalls of the server. Additional encryption and security measures means you will have to worry about infected computers less often. It is no wonder so many people are turning to Amahi server software.

Article was written by Andrew Spalding. If you would like to learn more about building computers and home servers. Then visit How to Build a Computer

Tags: , ,

By Alex Colcernian

ltsp diagramDo your discoveries, interests, or work revolve around cloud computing, low-resource computing, server-centric computing, thin clients, or virtualization? If so, chances are good you’ve heard of the Linux Terminal Server Project (LTSP). Started in 1999, LTSP was the driving force in delivering network booting X/GUI (graphical user interface) and applications in the Linux space. As a solution to lower cost barriers compared to deploying multiple PCs throughout an organization, LTSP rapidly gained traction. Today, LTSP is used worldwide in education, health care, manufacturing, retail, and more. Providing the efficiency of delivering applications and storing data on a server(s), LTSP drastically cuts IT support requirements, while lowering or eliminating burdensome software license fees dues to it’s open source nature.

Limitations to the adoption of thin client environments in the past are strongly linked to user experience and multimedia. With exponential growth in web-based multimedia technologies like java, ajax, and flash, client-side resource demands have increased. The need for additional computing resource places a tax on network bandwidth and server resources. Recent advancements in LTSP 5, specifically Local Applications (Local Apps), have mitigated multimedia and bandwidth challenges.

Local Apps allow system administrators to configure LTSP in a way which shares resource demand between thin clients, and servers. Running an application utilizing thin client resources reduces network bandwidth as well as load on the server. Multimedia runs notably better on thin clients in an LTSP 5 deployment utilizing Local Apps. With Local Apps, users are delivered a performance experience which mirrors that of a full desktop PC. In return, thin clients become a transparent device to the users in an organization. When using Ubuntu, the free Linux based operating system from Canonical Ltd., users can enjoy the latest 3D desktop effects known as compiz.

If you experimented or implemented LTSP in the past and were concerned with multimedia performance, it’s time to give LTSP 5 a try. Local Apps make a world of difference in performance. We recommend downloading the Ubuntu 9.10 Alternate Install CD, and following instructions to install an LTSP environment.

LTSP in today’s world is deployed on dedicated or virtual servers, providing a cohesive thin client environment. LTSP has the ability to be integrated with key features in organizational networks like network attached storage, and centralized authentication, (e.g. OpenLDAP, eDirectory and Active Directory). LTSP is the most flexible solution when it comes to terminal services functionality in Linux environments.

Alex Colcernian is the Director of Marketing and Sales at DisklessWorkstations.com. DisklessWorkstations.com founded alongside the Linux Terminal Server Project (LTSP) in 1999, provides thin client hardware and solutions. DisklessWorkstations.com is the global leader in LTSP deployments, serving businesses, government, non-profits, and schools. For more information, please visit http://www.DisklessWorkstations.com.

Tags: , , ,

By Christopher P Wakefield

Linux MintToday we will have a look at setting up a DNS server on Linux. This tutorial was configured using Linux Mint 9 but the steps are the same for any Linux distribution.

First thing to do is to install the software we need. Open up a terminal and type:

sudo apt-get install bind9

Once installed it is time for some configuring. The first file we need to configure is named.conf.local. So in the terminal type:

sudo nano /etc/bind/named.conf.local

I have used nano to open up the file but use whichever text editor you are happy with. Insert the following code into the file:

# This is the zone definition. replace example.com with your domain name

zone “business.com” {

type master;

file “/etc/bind/zones/business.com.db”;


# This is the zone definition for reverse DNS. replace 0.168.192 with your network address in reverse notation – e.g my network address is 192.168.0

zone “1.168.192.in-addr.arpa” {

type master;

file “/etc/bind/zones/rev.0.168.192.in-addr.arpa”;


Replace business.com with the name of your DNS domain (this is not the same as an active directory domain but rather a name for your DNS zone).

Next up is the options file. In the terminal type:

sudo nano /etc/bind/named.conf.options

Within this file we need to modify the forwarder with the address of your ISP’s DNS servers. So modify the file adding the following:

forwarders {;;


Replace the addresses above with the addresses of your ISP’s DNS servers.

Now we need to add the zones file:

sudo mkdir /etc/bind/zones

And then configure it:

sudo nano /etc/bind/zones/business.com.db (replace business.com with your DNS domain).

Add the following code to the file:

// replace example.com with your domain name. do not forget the. after the domain name!

// Also, replace ns1 with the name of your DNS server

business.com. IN SOA chris-server.business.com.

// Do not modify the following lines!







// Replace the following line as necessary:

// ns1 = DNS Server name

// mta = mail server name

// example.com = domain name

business.com. IN NS chris-server.business.com.

business.com. IN MX 10 mta.example.com.

// Replace the IP address with the right IP addresses.

www IN A

mta IN A

chris-server IN A

In the above code replace the following:

business.com with your DNS domain name, with your static DNS server address,

chris-server.business.com with your computers hostname.dns-domain,

mta is your mail server (if you have one). If you do modify the IP address to show this.

Next we have to create the reverse DNS zone file:

sudo nano /etc/bind/zones/rev.1.168.192.in-addr.arpa

Add the following code:

//replace example.com with yoour domain name, ns1 with your DNS server name.

// The number before IN PTR example.com is the machine address of the DNS server

@ IN SOA chris-server.business.com admin.business.com. (







IN NS chris-server.business.com.

1 IN PTR business.com

All that is left to do is restart bind:

sudo service bind9 restart (using upstart) or sudo /etc/init.d/bind9 restart (init scripts)

Don’t forget to test the new configuration:

dig business.com

Here at ComTech I love Linux. I use it for my own systems in the office and ‘pass on the good word’ to clients when appropriate. I can sort out any Linux queries you might have, including setting up servers, or offer advice if needed. Please go to http://www.comtech247.net/business-it for more information.

Tags: , , , , , , , ,

Linux Mint 12 logoBy Christopher P Wakefield

Usually I would set up a Linux dhcp server using the dhcp3-server package. With the arrival of Linux Mint 12 the configuration is slightly different. This tutorial will outline the new steps.

First thing to do is to give your server a static IP address.

Now we need to install the dhcp package. Open up a terminal and type:

sudo apt-get install isc-dhcp-server

There are two main files /etc/default/isc-dhcp-server and /etc/dhcp/dhcpd.conf~ which we will need to configure so lets take the first. Open up a terminal and using your favourite text editor type:

sudo gedit /etc/default/isc-dhcp-server

You should get the following:


# Defaults for dhcp initscript # sourced by /etc/init.d/dhcp # installed at /etc/default/isc-dhcp-server by the maintainer scripts

# # This is a POSIX shell fragment #

# On what interfaces should the DHCP server (dhcpd) serve DHCP requests? # Separate multiple interfaces with spaces, e.g. “eth0 eth1″. INTERFACES=”eth0″


Replace eth0 above with the name of your network interface that you want the server to lease addresses on. Onto the next file. Open up a terminal and type:

sudo gedit /etc/dhcp/dhcdp.conf~

which should give you the output below.


# # Sample configuration file for ISC dhcpd for Debian # # Attention: If /etc/ltsp/dhcpd.conf exists, that will be used as # configuration file instead of this file. # #

# The ddns-updates-style parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages (‘none’, since DHCP v2 didn’t # have support for DDNS.) ddns-update-style none;

# option definitions common to all supported networks… option domain-name “example.org”; option domain-name-servers ns1.example.org, ns2.example.org;

option domain-name “business.com”; default-lease-time 600; max-lease-time 7200;

# If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. #authoritative;

# Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7;

# No service will be given on this subnet, but declaring it helps the # DHCP server to understand the network topology.

#subnet netmask { #}

# This is a very basic subnet declaration.

subnet netmask { range; option routers; option subnet-mask;

option broadcast-address; option domain-name-servers,;

option ntp-servers; option netbios-name-servers; option netbios-node-type 8; }

option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;


# This declaration allows BOOTP clients to get dynamic addresses, # which we don’t really recommend.

#subnet netmask { # range dynamic-bootp; # option broadcast-address; # option routers rtr-239-32-1.example.org; #}

# A slightly different configuration for an internal subnet. #subnet netmask { # range; # option domain-name-servers ns1.internal.example.org; # option domain-name “internal.example.org”; # option routers; # option broadcast-address; # default-lease-time 600; # max-lease-time 7200; #}

# Hosts which require special configuration options can be listed in # host statements. If no address is specified, the address will be # allocated dynamically (if possible), but the host-specific information # will still come from the host declaration.

#host passacaglia { # hardware ethernet 0:0:c0:5d:bd:95; # filename “vmunix.passacaglia”; # server-name “toccata.fugue.com”; #}

# Fixed IP addresses can also be specified for hosts. These addresses # should not also be listed as being available for dynamic assignment. # Hosts for which fixed IP addresses have been specified can boot using # BOOTP or DHCP. Hosts for which no fixed address is specified can only # be booted with DHCP, unless there is an address range on the subnet # to which a BOOTP client is connected which has the dynamic-bootp flag # set. #host fantasia { # hardware ethernet 08:00:07:26:c0:a5; # fixed-address fantasia.fugue.com; #}

# You can declare a class of clients and then do address allocation # based on that. The example below shows a case where all clients # in a certain class get addresses on the 10.17.224/24 subnet, and all # other clients get addresses on the 10.0.29/24 subnet.

#class “foo” { # match if substring (option vendor-class-identifier, 0, 4) = “SUNW”; #}

#shared-network 224-29 { # subnet netmask { # option routers rtr-224.example.org; # } # subnet netmask { # option routers rtr-29.example.org; # } # pool { # allow members of “foo”; # range; # } # pool { # deny members of “foo”; # range; # } #}


This needs a little bit of explaining.

1. Everything in bold needs adding to the file. Adjust your settings according to your network requirements.

2. The option domain name is your dns zone name. For example set to business.com.

3. Range should be the range of ip addresses that you want the server to give out to clients.

Now restart the dhcp service by typing:

sudo service isc-dhcp-server restart

That’s it!! Your dhcp server should be running, however it is best to check. Open up a terminal and type:

sudo netstat -uap

which will show you the following information:


Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

udp 0 0 *:55827 *:* 916/avahi-daemon: r udp 0 0 chris-desktop.lo:domain *:* 1273/named udp 0 0 chris-desktop:domain *:* 1273/named udp 0 0 *:bootps *:* 4525/dhcpd udp 0 0 *:17500 *:* 1768/dropbox udp 0 0 *:54407 *:* 4539/VirtualBox udp 0 0 *:* 1016/nmbd udp 0 0 chris-deskto:netbios-ns *:* 1016/nmbd udp 0 0 *:netbios-ns *:* 1016/nmbd udp 0 0 *:* 1016/nmbd udp 0 0 chris-deskt:netbios-dgm *:* 1016/nmbd udp 0 0 *:netbios-dgm *:* 1016/nmbd udp 0 0 *:mdns *:* 916/avahi-daemon: r udp6 0 0 [::]:domain [::]:* 1273/named udp6 0 0 [::]:51853 [::]:* 916/avahi-daemon: r udp6 0 0 [::]:mdns [::]:* 916/avahi-daemon: r


This shows that the dhcp daemon is working.

Hi I am Chris the owner of ComTech. I provide IT support to both personal and business clients from my base in Alloa, Clacknmannanshire. Here at ComTech I am experienced in using Windows and Linux technologies whether it be for the home or business. I also incorporate Blackberry hardware into my business, namely the Blackberry Playbook and Bold 9780. I can advise, design and implement solutions to any problems you may have so if you have IT issues just pick up the phone. Please go to http://www.comtech247.net for more information.

Tags: , , , , ,
Tags: , ,

A Perfect Guide for MYSQL and Security – Creating the Best Linux Hosting Environment
By Kanquona Bhattacharjee

There are certain things you must be very careful of when you build your website. Performance of the website is a major factor in its success. This guide will give you a technical overview of your server performance. In this guide I am only concentrating on Linux environment as

1. It is cheaper.

2. It supports the fastest script engine PHP.

3. It has the default MySQL database.

4. Its web server is apache, which can be configured with less effort and

5. The Linux environment is most popular.

Before I begin, I must explain what makes a website performs rock solid. As you are aware in most of the websites database is a key factor which mainly stores and fetches data. A portal with slow database execution takes long time to execute and that can take away most of the visitors. If your portal accepts payment then security is the next thing, you shall be concerned of. So, my article will mainly revolve with these two features and a bit of other key areas which you would like to give focus on.

Hardware: This is the factor you must take seriously depending upon the kind of business you are doing and the number of visitors you are drawing. The hardware peripherals which affect the performance are mainly RAM and your CPU speed. RAM is a space which stores data temporarily for CPU access. But if your CPU cannot process faster, then transferring more data into the RAM area will not solve the problem, since the data will remain unprocessed. A better system is a balanced system and increasing just one parameter will never go to improve speed.

MySQL: Database is the most important parameter in terms of server performance. If I classify what makes a slow database or rather what you can do to improve data seek speed, then we get

1. Database design

2. Query standard and

3. Configuration as the primarily responsible reasons.

Database design: MySQL allows you to define data type definition in wide varieties. And you must use them optimally. Declaring the data type of a field as int(11) will unnecessarily eat up space, if the field stores value between 0 and 10. Remember, a good bridge is one which is has better architecture. Mere using good materials never build a good bridge. Here are a few guidelines.

A. For numeric value, guess what maximum value it might store and then select between tiny int, small int, medium int and int. Fields which you know will never store negative numbers should be unsigned.

B. For alphanumeric characters it is wise to select variable length than fixed length as variable length can adjust memory space depending upon size of data stored.

C. Normalize the table as much as possible. This decreases the chance of data redundancy. Also as tables get broken up, memory space usage decreases.

D. Proper indexing is the key for better search result. Index your table wisely and pragmatically. If you think, your table will be searched more on employee name than on employee code, create index based on employee name. Mysql arranges data based on available indexes, so search based on index results faster performance.

Query Standard: The fast data retrieval depends on the query you write. Here are a few tips on that.

A. Join query is always better than multiple nested queries. So try to use join queries if more than one table are involved in search.

B. Avoid Select * statement.

C. Try to test queries by writing them in alternate ways.

Server configuration is the last thing we can do to better the performance. Here are the important settings which affect the performance.

A. Key_buffer_size: This is the most important settings. The larger you set its value, the more MYISAM indexes store in memory. As most queries use indexes as search factor, memory plays better role than disk. The ideal settings is 25% of server memory but less than 50%, for improved performance.

B. The table cache: When mysql access a table, it places it in the cache. So increasing cache size plays an important role. So if you are accessing three tables, mysql opens three tables in the cache. Its default value is 64, but you must set it accordingly depending upon performance. An optimized one, not too high, not too low.

C. Sort_buffer: If you are sorting huge table then you must set its value high.

D. Read_rnd_buffer_size: The read_rnd_buffer_size is used after sort when rows are read in sorted order. If you are using many queries which use order by clause, increasing this value will help improve performance.

E. Query cache: first you must on query cache by setting query-cache-type=1 and query-cache-size can ideally be around 15-20 MB.

F. Tmp_table_size: This variable set the maximum size for a temporary table in memory. You must try avoiding temporary table by optimizing query. If the table becomes two large, MySQL creates a MyISAM table instead. Upping this value helps in speed, if temporary table size gets increased.

I would not discuss much on security issues rather would try to discuss it separately. But as an introduction SQL injection, Cross Side Scripting and HTTP trace are the most important security threat one website can get. SQL injection is a threat which exposes table name and data when a purposely built query is passed to the database through any web form. Basically when user input is incorrectly filtered for string literal escape characters. If we consider the below SQL statement

“Select * from employees where emp_name’=” + EmployeeName + “‘”

Now if the user input EmployeeName has any ‘ inside it, mysql cannot escape the string literal and exposes error.

Similarly if purportedly written javascript is passed through user input, Cross Side Scripting or XSS attack happens. This client side script can take charge of the website through hole exposed by the weekly programmed website code. I would like to discuss more with security issues. Till then happy reading!!

Kanquona Bhattacharjee is a freelance writer and blogger. She has completed her post graduation in English from the University of Calcutta. She has some deep insight into social problems and often present these infront of the most strongest medium. Her personal blog is http://journeytolearning.blogspot.com/ She can be contacted at kanquona@gmail.com

Tags: , , , , , ,

Web Hosting and Technology

By James Koh

One of the more common things about the whole web hosting is that there is a lot of technology that is behind it and this is one of the things that you need to be looking at when you are trying to choose a web hosting company. This is the most important thing that you need to look at, what kind of horsepower is going to be placed under the whole bonnet of your online experience?

Whether or not you need something that is small or something that is really large, all you need to look at is not only how much power is going to be placed there, but also the kind of quality that you need to be looking at as well. Technology and web hosting is actually something of a good partnership – something that is unavoidable in this industry, and the thing you need to be looking at is the server.

The server is really in all, a networked machine that is a lot like a desktop PC, only more powerful. In fact, the server would need to be plenty more powerful and this is because of the fact that sometimes, a single server has to power a few websites and this can run up to the scale of a hundred or even a few hundred websites – if this is a shared server hosting service that you have signed up on. One thing that you need to know is that there are plenty of servers out there, and how they are set up would determine the price you are paying for.

For one thing, a server would normally have a multi chip layout, which would mean that it has several chips daisy chained within the motherboard to make the server fast. RAM and virtual memory are also very important factors in the whole game, because of the massive amount of data that would be coming in and out of the server. There is also the whole concept of the network server, which is the core of the machine, and the machine would need to have a speedy networked that can far exceed the normal 1000MBPS Ethernet cards that you get on normal desktops.

It would also need to have an internal switch board with plenty of network interfaces, supporting a variety of OS’s. Normally, a server is usually WINDOWS or LINUX based, and this is because of their reliability and their efficiency. These are some of the aspects of the kind of technology and software that you might come to expect when it comes to the whole game of servers and web hosting. This is also the checklist you need to know – having some sort of industry knowledge will really help you to choose and make a correct choice of the companies as well as the sort of hardware you might want to need for the kind of services that you are going to be using online. With this information on hand, your web hosting experience would go by just that little bit smoother.

Vodien Internet Solutions provides all-in-one web hosting packages. Find out more details about their Singapore web hosting packages at their website.

Tags: , ,
« Previous posts Back to top