Drupal Finding and killing anonymous sessions in Drupal Sessions in Drupal are created when you log into Drupal. You can however start a session without first authenticating. This is known as an anonymous session
Caching CORS, Cache poisoning and the Vary HTTP header Understanding the Vary header is key ensuring CORS will work with CDNs and caching.
Kibana How to create scripted fields in Kibana using Painless What is a scripted field in Kibana?Kibana is really good at searching and visualising data held in Elasticsearch's indexes. When you need to go outside of what is in that index however
MySQL Finding and killing long running SQL queries in AWS RDS Occasionally we find sites that are running extremely slowly, and digging down we end up finding MySQL queries that have been running, for sometimes days or even weeks.
SSL Debugging SSL certificates with Certigo OpenSSL only goes so far, learn about Certigo, to which goes a lot further.
Performance Preparing for a high traffic event, simple steps to success The steps that any new launch or high traffic event should go through in order to have the best chance of success.
Drupal Search API attachments and storing reasonable amounts of data Search API Attachments has a setting that allows you to store only the most important information in the database.
Drupal How to add sub tabs under the User profile in Drupal 8 A simple step by step tutorial on adding a custom sub tab in a user's profile in Drupal 8.
Drupal How the feeds module in Drupal 7 ended up causing MySQL to sever the connection This is a short story on an interesting problem we were having with the Feeds module and Feeds directory fetcher module in Drupal 7.
Drupal PHP 7.3 and when you can upgrade your Drupal site PHP 7.3.0 was released in December 2018, and brings with it a number of improvements in both performance and the language. As always with Drupal you need to strike a balance between adopting these new improvements early and running into issues
Cloudflare Analyzing Cloudflare Logs (formally ELS) with the command line If you have an enterprise zone with Cloudflare, there is the ability to request the raw request logs using 'Cloudflare Logs' (formally called Enterprise Log Share or ELS for short).
Ghost Adding Google Analytics to AMP posts in Ghost Ghost comes with AMP support, however there is no built in way to in the administration UI to add Google Analytics to your AMP theme. Fortunately, implementing this is relatively simple.
PHP How to generate a CSR with SANs in PHP A simple tutorial on how to generate a CSR with SANs in PHP. Code samples are supplied.
Drupal Custom Cloudflare WAF rules that every Drupal site should run This blog post helps to summarise some of the default rules I will deploy to every Drupal (7 or 8) site as a base line.
PHP New features coming in PHP 7.4 PHP 7.4 is scheduled for release in November of this year, with it bring some performance improvements along with some new features. Here are a couple of the new features that are
Meta The history of Pixelite, a progression through the CMS landscape This website www.pixelite.co.nz has gone through a few iterations over the years. I thought I would go through a few of the various CMSs and hosting providers we have used, and what went well, and what lessons we learned.
Docker Creating a cluster with Rancher - Part 1: Installing rancher Rancher is an open-source self-hosted Kubernetes user interface. I'm going to show you how easy it is to get up and running with Rancher so that you can have a play.
Development Using Docker for PHP development. I'm going to assume you have some basic knowledge of docker. I also assume you have installed docker and docker-compose locally. You can read more about docker here. I'm going to be doing
Ghost Add PrismJS to Ghost for syntax highlighting of code snippets Out of the box Ghost will not syntax highlight your code snippets. I will explain how to implement these changes in your own site.
Drupal JSON:API testing with Cypress Upgrading JSON:API and Drupal core can be tricky to keep your API intact. Using Cypress is an easy way to have an extra set of eyeballs on the upgrade.
CasperJS API testing using CasperJS Having tests across your API endpoints is essential in order to avoid regression issues down the track
Drupal 10 things I learnt building in Drupal 8 Some of the neat things I have found with Drupal 8 and some of my lessons learned
Drupal Writing PHPunit tests for your custom modules in Drupal 8 Integrating PHPunit into your custom modules is now even easier.