Upgrade to PHP 5.6 on Ubuntu with GD library fix

PHP 5.6 GD

I’ve been running a couple of Ubuntu servers on AWS (not the free ones) for years that are still using PHP 5.5. Even though it is out of support I’ve kept with it. They host one of my old applications that I thought may be a problem on PHP 5.6 or later. I have two of these Ubuntu 14.04 LTS servers; one for test and one for production. I had a recent request to host another application that required PHP 5.6 as a minimum. These servers are under utilised so

Get a free Linux server from Amazon Web Services

AWS free cloud server

I always have doubts when I see a claim that something is free but I needed to set up a server for a short period of time and have it publicly available for a few months. It will host three small demo applications and the number of users will be very low and their activity non-intensive. I really didn’t want to purchase anything as it’s for a non-profit or go through the trouble of setting up a more permanent solution as it has no reuse after this exercise. I knew

Publishing Visual Studio web app to Azure PaaS


In this article, I will use Microsoft Visual Studio to create a web application, published publicly as a Web App to the Azure cloud. This is the first in a series about using Microsoft tools and the Azure cloud that I want to write. This will just use a very simple example to show how quickly you can publish a website to the Azure cloud without any complicated servers to install or configure. It really is simple but will get more complicated in future articles when I will explore more

Setting up a secure website certificate on an Ubuntu server

HTTPS Traffic

This article goes through the steps required to create and install a secure certificate on a website which will allow web traffic to be encrypted over https. The article uses the default website on an Apache 2 Ubuntu web server. It also mentions what to do for multiple websites each with their own secure certificate. It is part of my other articles on setting up an Ubuntu Linux server hosted using Amazon Web Services, but the same principals can be applied to any website on any server as the steps

Setting up a MySQL database on a Linux server

Setting up a MySQL database on a Linux server

This article goes through the steps required to create a MySQL database, a database user and give database permissions to that user. It also covered importing structure and data from a script together with a bit of information about creating tables and adding data. It is part of my other articles on setting up a “Ubuntu Linux” server hosted using Amazon Web Services, but the same principals can be applied to any Linux server as this article is just about using MySQL commands. If you do not already have MySQL

Setting up delegation between servers for Windows authenticated sites

IIS & SQL Server Delegation

Recently, I heard that someone was having trouble setting up Windows Server delegation and I remembered that I wrote about it a few times several years ago in 2010. That blog and article does not exist anymore and there is little documentation on the process (most IT professionals will give up and use a different solution), so in the spirit of sharing at this time of year, here it is again. What is server delegation? When building a web application you can build your own user administration or use a

Setting up scheduled tasks known as Cron Jobs on a Ubuntu server

Cron Jobs

In this short article, I will set up scheduled tasks known as Cron Jobs on a Ubuntu server. This will allow me to automatically run PHP scripts on the server at various points in time without any interaction. Any user account on the Ubuntu server can set up their own Cron Jobs which will run under their own account. If you want to make sure the scheduled task has full access to everything then it will need to run under a privileged account such as the “root” user and you

Hosting multiple websites on a single Apache server

Multiple Websites

In this article I will run through the setup of multiple websites on Apache on a single Ubuntu LAMP server. LAMP is a common acronym for a typical setup and stands for Linux, Apache, MySQL and PHP. I will go through step by step using FileZilla (for transferring files) and PuTTY (command line interface for configuring the server). There are example screens walking through each step showing both enabling or disabling the default Apache website and adding/enabling other websites. The process is the same for each additional domain so after

Steps to securing your Apache web server on Ubuntu

Apache Security

This article goes through some of the things you can do to protect your web server from certain types of attacks and to keep the disclosure of information down to a minimum. It will show you how to help prevent clickjacking, SSL cipher or mime-based attacks. It will show you how to avoid error messages and other methods giving away more information than is needed. These can mostly be prevented at a server level so that they apply to all websites that you publish on the server. A brief description

Fixing GD by replacing the version in the bundled PHP package

PHP GD Library

The GD Library in PHP allows developers to output images from code in various formats rather than output HTML mark-up for displaying web pages or snippets. It is a very popular method of creating images used on web forms where the validity of a human user needs to be attained (this method is commonly known as Captcha). However, a bundled PHP distribution might not come with GD enabled and fully functioning such as those used by the “apt-get install php5” command on Ubuntu. Even after “apt-get install php5-gd” is run