Archive for the ‘Life: Work and Techy’ category

Techy: Dedicated server prices compared

February 16th, 2013

We’ve just started our annual “provider audit” and our first “task” was to look at comparable dedicated hosting providers to make sure we are getting a package for us at the lowest reasonable rate. Our requirements are:
* Minimum 4Gb RAM
* 4 CPU Cores at 2.0Ghz or above
* 2x 500Gb hard drives
* RAID 1 or RAID 10 (software or hardware)
* 1Tb monthly data transfer limit
* Minimum of 4 IPv4 IP addresses
* Europe hosting (UK preferred)
* CentOS/RedHat operating system
* Ideally cPanel, IPv6 and remote “console” support
* Not “Cloud/VPS” (we’re going to be using the server for shared hosting and shared hosting on shared hardware just seems silly)

Our budget for this was £200+vat. Here’s what we found:
View in new window.

We haven’t yet made a decision (I must admit, we’ve been extremely happy with Memset for quite a few years now) – it is interesting what all the companies offer. Please remember that this spreadsheet is incomplete in parts (the ? should show where), doesn’t actually assess the providers networks or what support package is offered (i.e. there may be an “unlisted” reason one costs £100pm more than another!).

Is there any one you think we’ve missed?

Gmail: Search for mail between two dates

February 12th, 2013

If you want to search your Gmail/Google Email mail for emails received between two dates, the following search term should help;
before:2013/02/01 after:2012/12/31

Command Line awk Regular Expression for Apache logs

February 10th, 2013

For code testing against a live site, I’ve had to extract all urls from an Apache access file – but how to do this from the Linux command line?

The secret is to use two regular expressions (regexp) in a “awk” command – for example:

cat examine.txt | awk 'sub(/.*(GET|POST) \//,"")&&sub(/ HTTP.*/,"")'

This will pipe the contents of the file examine.txt to AWK which will run two regular expressions. The first one will remove the “phrase” “GET /” or “POST /” and anything before it – and the second will remove the “phrase” ” HTTP” and anything after it. It’ll then give you a nice list of URLs to test.

Oh – and if you’d like it to produce a nice “curl friendly” file of just URLs starting “xyz.php” from host then:

cat examine.txt | grep "GET /xyz.php" | awk 'sub(/.*(GET|POST) \//,"")&&sub(/ HTTP.*/,"")' > curl.txt

should do the trick (combine that with cat curl.txt | xargs -n1 -i curl {} > /dev/null to test)

Techy: Setting up IPv6 on Linux Mint

February 6th, 2013

On my Linux Mint 14 HP Laptop, I need connectivity to the “new” IP v6 internet – however, neither our office router (a 4 year old Draytek Vigor 2820n) or our ISP (BT Business Infinity) support IPv6: so how do I get access?

Well, first of all, I’ve signed up for an account via (who provides what is called a “4to6 tunnel”) and waited for my account to be approved (it took about 3 days). I then requested a tunnel type of “Dynamic NAT-traversing IPv4 Endpoint using AYIYA” from the UK provider Goscomb and waited for that to be approved (which took about 8 minutes).

Once I had the tunnel, I needed to configure my laptop. A quick “sudo apt-get install aiccu” installed the AICCU package – which is the “SixXS Automatic IPv6 Connectivity Client Utility” (it’s also available for Windows, Mac, FreeBSD and many other platforms).

I then modified /etc/aiccu.conf by running “dpkg-reconfigure aiccu” which prompted me to select my Tunnel Broker (SixXS), my SixXS username (in the format WXYZ-SIXXS) and my SixXS password. It then automatically restarted aiccu for me.

Finally, I needed to configure my DNS to use IPv6 resolvers. I tend to use OpenDNS for DNS provision (if your nameservers are and 208.67.2220.220 then you do as well), but I needed IPv6 ones. Luckily, OpenDNS provides the following IPv6 DNS resolvers 2620:0:ccc::2 and 2620:0:ccd::2. Add them to my /etc/resolv.conf file in the format:
# OpenDNS ipv6
nameserver 2620:0:ccc::2
nameserver 2620:0:ccd::2
# OpenDNS ipv4

Go to the IPv6 test site at and my score is 10/10! Woot!

Google Adwords: Bullet Point recommendations

February 5th, 2013

Here is a list of bullet points to keep in mind when running advertisements on Google Adwords:

* Each campaign should be very specific (“cpanel web hosting”)
* Use of the exact match [keyword] system will target specific keywords entered on their own
* Set up separate campaign for EACH country (try not to group countries)
* Multiple campaigns/adgroups with keyword specific ads and budget
* Upper casing the first letter of each Adword is recommend
* Using exclamation marks at end of adwords is good
* Use {KeyWord: Default text} to generate headlines
* Create variant adverts – sometimes with minor differences
* Try and keep the number of keywords per adgroup low: Google suggest 5 good keywords, maximum of 15 keywords per adgroup
* The Display URL can be “faked” (i.e. doesn’t really exist): for example
* Use “Keywords->See search terms” to see exactly which search terms were triggered in that adgroup
* Make sure negative keywords such as “free”, “jobs”, “careers” etc are set if not relevant
* On negative keywords, DON’T do things such as “free web hosting” as it will negatively match “web” AND “hosting”! If you need to block that specific, use [free web hosting]
* Use separate campaigns for display network with each adgroup targeting specific types of sties and each separate budgets
* If targeting generic words such as “web hosting use a separate campaign with separate budgets
* Recommend setting up Ad Extensions using Sitelinks. Possibly including telephone numbers and/or product images (although this would need us to add “products” to Google Merchant Centre with fixed pricing: so may not be relevant).

%d bloggers like this: