Grant
Send

 

Camera Animation

 

Welcome to Photoscotland.net

 

Photography by Grant Glendinning

 

Capturing Scotland’s landscape in stunning detail.

 

Prints available including framed, canvas, acrylic, and metal prints.

 

 

 

 

P h o t o s c o t l a n d . n e t

Scottish Landscape Photography

Scottish Landscape Prints

Black and White Photography

Nature Photography

Astrophotography

Fine Art Prints available

 

© www.photoscotland.net 2011. All Rights Reserved.

 

The Power of Manual Website Optimisation: Achieving 100/100 on PageSpeed


Achieving a Perfect 100: How I Optimised My Website and VPS (Without Plugins)

 

A few weeks ago, I wouldn’t have imagined diving into the world of manual web optimisation—but here we are. What started as a simple curiosity turned into a full-on performance overhaul for my website photoscotland.net. With a bit of persistence, plenty of learning, and the steady help of ChatGPT, I’ve managed to achieve something I never thought I would: near-perfect scores across all PageSpeed Insight categories—100 for Performance, SEO, Accessibility, and Best Practices.

Letting Go of LiteSpeed Cache

The first major decision was to remove the LiteSpeed Cache plugin. While widely used, it didn’t suit my setup and actually slowed things down. I decided to configure everything manually, which gave me better control and noticeably better results.

Manual Optimisations via Child Theme

The child theme—previously a blank slate—was transformed into the core of my optimisation strategy. Here’s what I implemented:

  • A custom style.css file filled with performance-focused CSS

  • A functions/ directory for lightweight PHP-based enhancements

  • A js/ folder with locally-served JavaScript files, replacing external CDN scripts

  • Custom CSS/JS using the theme’s built-in tools for extra fine-tuning

By reducing third-party requests and optimising everything at the source, load times dropped significantly.

Server-Side Optimisation with OpenLiteSpeed

Using the OpenLiteSpeed admin panel, I also made several key server-level optimisations:

  • Adjusted rewrite rules in the Virtual Host configuration

  • Refined context settings to enhance cache behavior and compression

  • Added a few directives to .htaccess to tighten delivery and improve compatibility

These low-level improvements ensured the server was just as optimised as the frontend.

Redis Object Caching (Without a Plugin)

Staying true to my no-plugin policy, I also integrated Redis object caching manually. With ChatGPT’s help, I downloaded the object-cache script directly from the official WordPress object cache drop-in, extracted only the necessary object-cache.php file, and dropped it into the wp-content/ directory.

Then, I added the appropriate Redis config lines to my wp-config.php file. This approach gave me all the speed benefits of Redis caching without having to install a plugin—keeping my setup lightweight and efficient.

Cleaning and Tuning the VPS

No optimisation would be complete without addressing the server itself. My VPS runs AlmaLinux with CyberPanel and OpenLiteSpeed, and here too, I made several improvements:

  • Identified and removed unnecessary services

  • Fixed CyberPanel log errors and misconfigurations

  • Ensured smooth, clean operation with no bloat or hidden performance killers

These behind-the-scenes tweaks helped ensure the site’s performance wasn’t just about pretty scores, but actual reliability.

The Results

Thanks to all of the above, PageSpeed Insights now shows:

 

 

 

Scores may fluctuate slightly depending on testing conditions, but the consistency and speed are vastly improved.

To improve the overall experience, I’ve redirected mobile users away from the homepage and instead send them to /landscapes. The homepage features a fullscreen slideshow which looks stunning on desktops, but doesn’t translate well to smaller screens where it serves little practical purpose. This redirect ensures that mobile visitors land on content that’s more relevant, faster, and easier to navigate.

It’s Still Evolving

This is an ongoing process. Web optimisation isn’t something you do once and forget. There are still improvements I want to make—media delivery, smarter lazy loading. But what I’ve achieved so far has made a huge difference, and it’s been worth every bit of effort.

Final Thoughts

None of this would’ve happened if I hadn’t had ChatGPT guiding me through the technical details, helping me troubleshoot when things broke, and showing me the cleaner, plugin-free path forward. Doing it manually gave me a deeper understanding of my own site and its performance.

If you’re tempted to optimise your own WordPress site and VPS without relying on heavy plugins, take it from me—it’s absolutely doable. Just start simple, back everything up, and stay curious.