AWS S3 hotlink protection via a bucket policy

Quick Bits: Enabling hotlink protection for S3 on AWS

We’ll wrangle S3 into a pseudo-webserver yet!

Latency Server Map USA (United States)

Matt’s geolocation, anycast, and server location notes

Aiming for low latency: Notes I made while setting up an Anycast + Geolocation + Latency Based Routing configuration for worldwide traffic.

OpenVZ 7 and Ubuntu 18.04 VPS Shutdown or Restart hangs SSH

Fixing SSH hanging on VPS restart (OpenVZ/Ubuntu)

One of the (few) benefits of OpenVZ is that your instances reboot very fast which can make for a quick workflow… unless of course reboots hang your terminal window.

Geo DNS vs Anycast

I tested GeoDNS vs Anycast for websites – seeing which one is better

Making websites load lickety-split! Combining what I’ve learned with a Geo DNS setup and an Anycast setup into a comparison.

HostUS Anycast IP

Getting address blocks and setting up anycast IPv4/IPv6 on Vultr – my experience

Setting up BGP Anycast on Vultr with some leased address space!

Route 53 Pricing (1 of 2)

Geo DNS: Cloudflare vs Route 53 – a look and short test results

Looking at 2 of the lowest-cost contenders for Geo DNS. Which should you choose? I spent the money and spent the hours of set-up time so you don’t have to!

Ubuntu 18.04 - Cannot assign requested address in nginx over IPv6

Fixing “Cannot assign requested address” for NGINX + IPv6 on Ubuntu 18.04

The workarounds to get nginx running over IPv6 on a fresh install changed a little in Ubuntu 18.04.

How To: Using “systemd” to mount NBD devices on boot (Ubuntu)

Avoiding unpredictable behavior when trying to mount a networked drive.

lscpu of the ARM

ARMv7 for a website? A quick and dirty (and horribly unfair) test!

Looking at a dedicated ARM server. They can handle phones and tablets, but can they handle… a website!?

Amazon S3 Default Notification Text

Creating custom notification text with Amazon S3 and SNS (via Lambda)

Want an email when a file is uploaded to S3 with some basic human-readable details? Amazon’s got you covered. Just use S3 *and* Lambda *and* SNS. Oh and you’ll probably need to step into IAM and CloudWatch too. Amazon: There’s nothing we can’t split across 5 separate services.

PHP 7 - 502 Bad Gateway

PHP 7.0 upgrade and “502 Bad Gateway”

Quick note for my own reference.

PHPNG – It’s pretty quick.

I compared the performance of PHPNG to the default PHP 5.5.9 that comes with Ubuntu 14.04LTS. The results were impressive.

WebP results for randomly pulled single images.

Serving up WebP to supported browsers: Nginx/cwebp/gif2webp & results!

I decided to give WebP a shot on a Ubuntu 14.04LTS VPS running nginx. Here’s the process I followed, and the results!

No JQuery Lightbox

No JQuery Lightbox for WordPress (plugin)

Trying to find a WordPress lightbox that didn’t require JQuery was nothing short of a nightmare. So I put together my own!

Compressing only html/css/js/etc files for use with nginx’s “gzip static”

Nginx has a great directive called “gzip_static” that will serve pre-gzipped content. Here’s how I set up a VPS to generate pre-gzipped versions automatically.

A few DNS benchmarks – Dec 2014

I ran some quick speed tests against 4 common DNS providers from 12 locations, and put together the results.

2 available edge cache routes we could take

Making your own CDN/Edge Cache on the cheap!

CDN’s are pricey, but with a little work, you can set up a few cheap VPS’s as edge caches and roll your own! I’ve gone over one possible implementation here.

DISQUS vs WordPress default comments (speed and page load)

A look at DISQUS and WordPress from a speed perspective – if you’re looking for fast page load times, you might be surprised at the results.

mixed content example

Remove HTTP/HTTPS/SSL Protocol plugin for WordPress

Introducing the new and exciting WordPress plugin designed to strip away those HTTP or HTTPS-specific links on your blog that are causing you problems! Ok, so it’s not that exciting. But it’s pretty simple and when it doesn’t explode your site, it works.   What it does… 1) The “remove protocol” plugin looks at your

nginx 502 “Bad Gateway” errors when set as a proxy over SSL/HTTPS

There are many possible causes of 502 errors in Nginx and I look at one of them. If you recently set it up to proxy over HTTPS, the proxy_pass directive probably contains the issue.