Esscotti Web development & SEO

16Jul/100

East of England Development Agency (EEDA) – Nations and Regions East

"Nations and Regions East commissioned Esscotti to design and implement a website in Nov/Dec 2009. We work within a complex regional structure and we needed a multi functional website that could be used by a whole host of different stakeholders with different interests and information needs. Esscotti were able to create a website that simply met these requirements.

We were really pleased with the overall look of the website, the time it took to deliver and the cost effective nature of the project. The website and the functions recommended by Esscotti has allowed us to streamline the work that we do and the website really has become a hub for all our marketing and promotion activity."

Gemma Cooper - Nations and Regions East

27May/10Off

Tribal

Tribal have recently developed a new free online strategic futures training programme for the Foresight Horizon Scanning Centre based on two existing live training courses. The online tool enables users to go through two modules which simulate all the exercises experienced on the physical coaching course. Arvind Shah developed the code for these training courses. One of the requirements for the training was that the site was AA accessible which added an extra layer of complexity. Arvind helped come up with solutions for building the training and completed the job to spec and on time to very demanding timescales. He is an accomplished and professional coder and I was very pleased with the quality of the work and would happily work with him again.

Cindy Cole, Senior Project Manager, Tribal Information and Technology Solutions

Filed under: Testimonials Comments Off
27May/10Off

Reclaimed wood kitchens

Wood is an incredibly durable resource and in centuries past reclaiming wood was common practice. By reclaiming and recycling wood we can reduce the demand on the world's forests yet satisfy the growing demand for wood furniture and furnishings.

NCM Carpentry is a company in Cambridgeshire that make reclaimed wood kitchens and furniture. Reclaimed pine kitchens create a traditional country or rustic feel and are environmentally friendly. The natural ageing of reclaimed pine gives your kitchen colour and character that is difficult to achieve with new timber.

The NCM Carpentry website was built using Wordpress.

6Apr/100

How to enable GD in PHP5 on Debian / Apache

Debian comes with a package called php5-gd.

Type the following to install this package.

apt-get install php5-gd

Restart Apache.

Done.

Try running "apt-get update" if you get the following error:

Err http://security.debian.org lenny/updates/main php5-gd 5.2.6.dfsg.1-1+lenny4
404 Not Found [IP: 130.89.149.225 80]
Failed to fetch http://security.debian.org/pool/updates/main/p/php5/php5-gd_5.2.6.dfsg.1-1+lenny4_i386.deb  404 Not Found [IP: 130.89.149.225 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Filed under: Code, PHP No Comments
4Apr/100

Fiftyone – Cambridge Bed and Breakfast

We recently completed a website for the new "Fiftyone" bed and breakfast in cambridge. To get something up very quickly was the most important requirement so we proposed making a straight-forward Wordpress template based site with some text, photos, and contact details. This simplicity meant that the website could be developed quickly and as a result it could be delivered at a cost that the client was very happy with.

Getting a good looking, functional website up quickly at low cost is a good first step - and once the B&B becomes established we can work to develop it further.

24Mar/100

Orca Bags

"Thanks Arvind for all your hard work! Your knowledge, prompt response and patience is much appreciated and we are really seeing the results!"

Simon Cooper, Orca Bags

Filed under: Testimonials No Comments
23Feb/100

The Moon Underground

"I had a very clear idea of what I wanted from my website and Arvind latched on to this straight away. He was enthusiastic and professional from the start and reacted swiftly to correspondents. His service was ideal for someone who wished his idea to be realised quickly and effectively for a reasonable fee and I am well pleased with the results.

I'm sure I will be calling on his services on a regular basis and would have no reservations about recommending Esscotti to anyone requiring a website or assistance in furthering their existing domain."

Richard Swan - The Moon Underground

30Jan/100

Setting up a user with restricted SFTP access

If you are running a Debian Linux webserver you may want to create users that can upload and download files from specific directories via SFTP. This post will explain how to set this up. First you need to create a user. If you want to create a user with the name 'webdev' then login as root and use the following commands at the prompt.

useradd webdev

Now you want to set the password for the new user 'webdev'

passwd webdev

Now we can create a home directory with the following commands.


mkdir /home/webdev

chown webdev:users /home/webdev

Now we only want this user to be able to login to the server via SFTP. We can do this by changing the users shell to sftp-server.

usermod -s /usr/lib/sftp-server webdev

Next we need to make the sftp-server a valid shell by adding the line "/usr/lib/stfp-server" at the end of the file shells in the etc directory.

By default, a new user will be assigned to a new group with the same name as the new user. So in our case the user 'webdev' will belong to the group 'webdev'. In order to make our new user the owner of any other directory including sub-directories (such as the website document root) we can execute the following command.

chown -R webdev:webdev /var/www

So now the new user webdev will be able to login va SFTP and have owner permissions to their home directory as well the webserver document root directory.

References: The following page has more useful information about managing groups and users in Linux.

Further Restrictions

In the example above we made the directory that holds the website belong to the group "webdev". If you have other users on the system that you do not want to have access to the website data then it could be wise to assign the www directory to the group "www-data" and remove read access for other system users to the directory www.

This is in order to limit access from users except the web server that runs under the user www-data.

For example:


usermod -a -G www-data webdev

usermod -g www-data webdev

chown -R :www-data /var/www

chmod -R o-r /var/www

By doing the above, we have added the user webdev to the group www-data (the same user that Apache normally runs as). Then we make www-data the default group for the user webdev, whereafter we make the www directory belong to the www-data group and set the permissions such that the files in that directory are group-readable but not world-readable.

Filed under: Code No Comments
21Jan/100

How to enable mod_rewrite in Apache 2 on Debian Linux

Simple! Just run the command

a2enmod rewrite

Restart Apache 2 by running the command

/etc/init.d/apache2 restart

Done!

...if you are still having problems getting mod_rewrite to work, check that the config file for the site (located in the directory /etc/apache/sites-available/) does not have "AllowOverride None". If it does then change it to AllowOverride All instead in order to allow mod_rewrite commands to be set in the .htaccess file.

Filed under: Code No Comments
19Jan/100

Setting up a Linux VPS

Rimuhosting offer good VPS packages and have datacenters in various locations around the globe. The main reasons for staying with Rimuhosting have been ease of setting up the service, server reliability and the level of support they provide. The support saff at Rimuhosting are allways very helpful and go the extra mile to help you out.

Here I am going to show how to set up a Linux VPS from Rimuhosting for web and email hosting. The VPS will be running Debian Linux 5.0 32-bit with Apache, MySQL, PHP. The server configuration is 512MB RAM, 4GB Disk space, 100GB data transfer limit per month, with a Webmin control panel. On a London based server this costs £27 per month (or £324 per annum).

After ordering your VPS package you will receive an order confirmation and later a VPS Setup email specifying the IP address of the server. In this example it took 2 minutes between the order confirmation email and the VPS Setup email.

Apache comes pre-configured and running on these servers so all you need to do now is to put the new server's IP address from the VPS Setup email in the address bar of your browser and you'll get a web page saying "It works!".

Now we need to configure the server to work the way we want it to...

The first time you log in to Webmin at https://<your IP address>:10000/ you will get a Security Failed message if you are using Firefox (presumably the same or similar will happen in other browsers too). This is normal and happens only because the browser can't validate the security certificate with a certificate authority. Just add exception for this certificate by clicking the relevant buttons in the browser window.

Setting up the Apache 2 Webserver using Webmin

In Webmin (we are using Webmin 1.490) you can install the relevant servers under the "Servers" option in the main menu on the left. Since Apache is active by default we don't need to do anything under "Apache Webserver".

Setting up the MySQL Database Server using Webmin

Click on the "MySQL Database Server" option and click the button that says "Start MySQL Server". We now want to set up our database that will be used by our website. On the following page and under "MySQL Databases", click on "Create a new database".

Specify a new database with the default character set and with the name "webdata" or whichever other name you prefer. Click on the "Create" button.

Now that we have created the database we need to specify users that will have access rights to the database. Clicking on "User Permissions" will reveal that there is already a database user called "root" set up and this user will have the same password as your VPS root password.

We are going to set up two users - one that has administrator rights and that can connect to the database from any host (We'll use this user later to connect from the MySQL Administrator tool), and another user with limited rights that will be used by our webiste.

Click on "Create new user" and specify the username "adminuser", set a strong password, set host to "any", details select all permissions by holding down shift while selecting permissions from the list. The click the "Create" button.

Next do the same for the "webuser", except only specify the following permissions: select, insert, update, delete, drop, alter, create tables, create temp tables and lock tables. Under host, specify "localhost" instead of "any" for the webuser.

We now need to configure the MySQL server to accept connections from any host so that we can use the "MySQL Administrator" tool (that runs on your local computer) to connect to the database. Go to the "MySQL Server Configuration" page and select "Any" under "MySQL server listening address" instead of the default 127.0.0.1. Click on Save.

Now restart the MySQL database server by clicking the "Stop MySQL Server" button in Webmin and then click on "Start MySQL Server".

With, for example, the tool MySQL Administrator, you should now be able to remotely login to your MySQL database server as the user "adminuser".

Finally, check that the server is configured to start the MySQL server at boot. In Webmin, go to the "Bootup and Shutdown" section under the System menu. Check that the MySQL deamon is configured to start at boot, and if it isn't change the setting accordingly.

Remote Server Admin and File Upload

We use SSH instead of telnet and SCP instead of FTP as SSH and SCP are more secure. With SSH and SCP passwords and data are encrypted before being sent over the Internet, whereas telnet and FTP don't encrypt.

SSH provides a method for securely logging into your VPS in order to administrate your server. Nothing is required to set up SSH on your VPS as SSH is configured to run by default. In order to login via SSH you need a client and for this we reccommend PuTTY. It is a free tool that can be downloaded from the Internet.

If your development computer is a Windows PC, then we suggest using the tool WinSCP for uploading files to your server. SCP is also pre-configured on your server so nothing is required to set it up there.

Other Webserver Settings

You also might want to consider how to enable mod_rewrite.

Filed under: Code No Comments