Server tuning that makes WordPress, WooCommerce and Magento fly

LiteSpeed cache rules, PHP workers and OPcache, Redis, MySQL and search tuned to your real traffic, with timings measured before and after. For stores and sites that slow down under load. From €490.

from€490excl. VAT 25.5%, one server and one site. proposed
request race: GET /product/oak-chair/ on shop.example.fi
example values, not a benchmark
tune a layer
race
As found805 ms
Tuned110 ms
Difference7.3× faster

Page cache HIT after three layers. The tuned request never reaches PHP, Redis or MySQL. For guest pages, cache rules beat raw server power.

Measure my real timings
Layer by layer breakdown
Example time per layer, as found and tuned, for product page, guest
LayerAs foundTuned
CDN90 msNo edge: TLS handshake to a distant origin90 msAs found, not tuned in this model
Web server45 msApache prefork with mod_php, no Brotli12 msLiteSpeed with HTTP/3 and Brotli
Page cache0 msNone: every request runs PHP8 msLSCache HIT, served from memory
PHP310 msNo OPcache, two workers queueing0 msSkipped: answered by the page cache
Redis0 msNot installed0 msSkipped: answered by the page cache
Database360 msinnodb_buffer_pool_size at the 128 MB default0 msSkipped: answered by the page cache
Time to first byte805 ms110 ms

Switch layers on for the lower lane, change the request type, then race again. The times are an example model of one store, chosen to show where each layer sits; your own numbers come from measuring your server.

Cache rules: what is cached, for whom, for how long

Speed comes mostly from deciding what must never be cached. These are my starting rules per platform; every site is then tuned to its own traffic and plugins.

WordPress rules plus the store paths.
Cache rules for WooCommerce
WhatCached forHow longBypassed or purged when
Product and category pagesGuests with an empty cart1 week, purged on changePurged when price, stock status or the product changes
Cart, checkout, my accountNobodyNeverBypassed by URL and by the woocommerce_items_in_cart and wp_woocommerce_session_ cookies
Mini cart and basket counterEach visitorLoaded separatelyPulled in with ESI or a small AJAX request so the page around it stays cacheable
Product lookups, sessions, transientsEveryone, in RedisUntil changedKeeps cart and checkout from waiting on MySQL, the pages no page cache can help
Filtered and sorted listingsGuestsShorter than productsEvery filter combination is a new entry, so bots are kept out of filter URLs
the rule that matters most

The cart cookie. If the cache ignores it, one shopper can be shown another shopper’s basket, or a page that says the basket is empty.

What I tune at each layer, and how I prove it

One layer at a time, on staging first, with the same request timed before and after each change.

  • Web serverLiteSpeed or Nginx with HTTP/2 and HTTP/3, Brotli, keep-alive and TLS session reuse. On LiteSpeed, LSAPI process limits matched to the PHP memory budget.
  • Page cacheLSCache, Varnish or Nginx FastCGI cache with the rules above: vary on the right cookies, purge by tag, never cache personal pages.
  • PHPCurrent supported PHP version, OPcache sized so opcache.memory_consumption never fills, worker count worked out from RAM per worker, slow log on.
  • RedisPersistent object cache with maxmemory and an eviction policy set, separate databases for cache and sessions, hit ratio checked.
  • MySQL or MariaDBinnodb_buffer_pool_size sized to the working set, slow query log at one second, missing indexes added, autoloaded options trimmed.
  • SearchOpenSearch or Elasticsearch for Magento, a search index instead of LIKE queries for large WooCommerce catalogues.
web1.example.fisample server
# before: time to first byte, guest product page
admin@web1:~$ curl -s -o /dev/null -w 'ttfb %{time_starttransfer}s\n' https://shop.example.fi/product/oak-chair/
ttfb 0.812s

# after: page cache rules, OPcache, Redis
admin@web1:~$ curl -s -o /dev/null -w 'ttfb %{time_starttransfer}s\n' https://shop.example.fi/product/oak-chair/
ttfb 0.094s

admin@web1:~$ redis-cli info stats | grep keyspace
keyspace_hits:1843920
keyspace_misses:61377

admin@web1:~$ php -i | grep opcache.memory_consumption
opcache.memory_consumption => 256 => 256
Sample output for illustration. Your report shows the same commands run on your own server, before and after.

Fast for one visitor, slow at the sale? Start with a measured baseline.

Get a stack tuning quote

How a tuning job runs

Nothing changes on the live server until the change has been timed on staging, and every setting is written down.

  1. 1

    Baseline

    Time to first byte for key pages from the access logs, slow PHP and SQL logs, memory and CPU at your busiest hour.

  2. 2

    Profile

    Find the slowest layer for each request type: guest pages, cart, checkout, search and the admin.

  3. 3

    Tune

    One layer at a time on staging: cache rules, PHP workers and OPcache, Redis, MySQL, search.

  4. 4

    Load test

    Your peak traffic plus headroom replayed against staging, so the gain holds when the sale starts.

  5. 5

    Report

    Before and after timings, every changed setting with its reason, and what to watch next.

When server tuning will not help

I would rather tell you before the job than in the report.

  • The slowness is in the browserHeavy scripts, huge images and layout shifts are front-end work. Fast time to first byte will not fix a slow Largest Contentful Paint caused by a 3 MB hero image; speed and Core Web Vitals fixes will.
  • One extension does the damageA plugin or module running hundreds of queries per request needs a code fix or replacing. Tuning makes it less bad, not good. I show you which one in the baseline.
  • You cannot change the serverOn shared hosting without access to PHP or cache settings, there is little to tune. Moving to a server you control comes first; see server and hosting migration.

Tuning packages

Fixed prices in euros, excluding VAT 25.5%. You keep root, every account and the written list of settings.

Recommended

Stack tuning

€490from proposed
  • Baseline and before and after timings
  • Page cache rules for your platform
  • PHP workers, OPcache and Redis
  • MySQL settings and slow query review
  • One server, one site
Get a stack tuning quote

Store under load

€890from owner to confirm
  • Everything in stack tuning
  • Cart and checkout path profiled
  • Load test at your peak plus headroom
  • Search engine set-up for large catalogues
Ask about a store under load

If the baseline shows the server is not your bottleneck, I stop there and you pay only for the measurement, with the findings in writing. owner to confirm

Questions about stack tuning

LiteSpeed or Nginx?

Both are fast; the right one depends on your stack. LiteSpeed reads .htaccess, fits cPanel servers and has its own page cache plugins for WordPress, WooCommerce and Magento, but the Enterprise edition needs a paid licence. Nginx suits custom VPS set-ups and Laravel. I tune either and only switch with a measured reason.

Will tuning fix a slow Magento store?

Often a large part of it, not always all. Full-page cache, Redis, OpenSearch, PHP workers and MySQL settings fix server-side slowness. If a module adds hundreds of queries or a block disables the full-page cache, the code needs fixing too. See Magento development; the baseline shows which applies.

Do you need root access?

For full tuning, yes: root or sudo over SSH, with a key I add and you can remove at any time. With only cPanel or hosting-panel access I can still tune page caching, the PHP settings your plan allows, the application and the database, and write down exactly what to ask your host for.

Get a stack tuning quote

Send the site address and which pages feel slow: product pages, cart, checkout or search. You get a written fixed price within one working day.

Prefer email? Write to [email protected]

Pikselipolku is an independent studio and is not affiliated with cPanel, LiteSpeed or any other product named here.

Audit requestReply within one working day
What is wrong? (optional)

Optional: slow pages, lost rankings, a deadline, a law you need to meet.

About 2 minutes. Helps me send a firmer price.

Reply within one working day

Or email me: [email protected]

Made in Tampere. The path ends here.61.4978° N, 23.7610° E

Tell me what you need. I reply within one working day.

About these landmarks
  • Näsinneula tower, Tampere, 1971. Opened in 1971, with an observation deck and a revolving restaurant at the top.
  • Finlayson mill, Tampere, 1820. Cotton mill founded in 1820 by James Finlayson; the red-brick mill and chimney still stand by the Tammerkoski rapids.
  • Tampere Cathedral, 1907. National Romantic granite church by Lars Sonck, with frescoes by Hugo Simberg.
  • Helsinki Cathedral, 1852. White neoclassical church with green domes above the Senate Square steps, designed by Carl Ludvig Engel.
  • Parliament House, Helsinki, 1931. Eduskuntatalo, built of red granite behind a front row of tall columns.
  • Temppeliaukio Church, Helsinki, 1969. The Rock Church: cut into solid bedrock and roofed with a copper dome.
  • Suomenlinna sea fortress, Helsinki, 1748. Island fortress begun in 1748 at the entrance to Helsinki harbour; a UNESCO World Heritage Site.
  • Olavinlinna castle, Savonlinna, 1475. Medieval castle with three round towers, built on a rock island between two lakes.
  • Sauna by a frozen lake, UNESCO 2020. Finnish sauna culture is on UNESCO’s list of the intangible cultural heritage of humanity.
  • Lapland: spruce, reindeer and a fell, North. The northern end of the journey: spruce forest, a reindeer and a snow-capped fell.
© 2026 Pikselipolku, Tampere, FinlandBusiness ID [Y-tunnus]Built to WCAG 2.2 AABack to top