RSS Feeds

Using PHP applications on a Webfusion hosted service (Linux)

I discussed the common types of ISP hosting services in a previous article, Use cases for phpBB, and I use one of these hosting services myself — a shared web service provided by the ISP Webfusion — to host my ellisons.org.uk domains.  I now want to describe some details of configuration of this service (as Webfusion doesn’t provide this information on its website) and how I can use this knowledge to tailor and optimise my applications to run on it. This information might help others who host domains using this service.  I have split the following off into related articles:

and in this article I want to set the context by describing the characteristics of the hosting service itself.

The Fusion Professional (Linux) offering

Webfusion provides an overview of this service on its website, and some FAQs that might be best described as superficial  Nonethelss, an experienced developer / admin can examine the configuration through normal user access and standard unprivileged system commands (and without any “hacking” or breach of security policies).

This shared service infrastructure runs on a farm of dual-processor quad-core servers (totalling 8 Intel E5410 Xeon cores per server, each typically with 8Gb RAM).  These servers each run a standard LAMP stack that you might expect to see in this sort of service offering.  Any hosted domain is served by a Webfusion DNS nameserver (in my case ns.hosteurope.com) that resolves any *.ellisons.org.uk name-service requests to a fixed registered IP address (94.136.40.100) which is the public side of a firewall into the Webfusion datacentre.  This seems to be a standard set-up where a load-balancing firewall passes any web requests for this IP address to a Linux server farm located in a 10.* private address space within the datacentre.  This is for scaling and security.  The firewall also maps any Webfusion web connections coming into the public 94.136.40.100 onto HTTP port 8002 (123-reg to 8003, etc.) on the 10.... IP addresses that the server farm listens on.

The Apache configuration

The servers share a common Apache configuration, which includes a complex set of rewrite rules to map the individual HTTP and HTTPS requests onto the correct virtual host.  Skipping some of the gritty details:

The PHP configuration