Improve Core Web Vitals from the Server Side (LCP, INP, CLS)
How hosting and server setup affect Core Web Vitals: TTFB and LCP, caching, compression, preload and Early Hints, images and field data.
Blog
Stacks, databases, deployment and marketing for websites you host yourself.
How hosting and server setup affect Core Web Vitals: TTFB and LCP, caching, compression, preload and Early Hints, images and field data.
Get a free *.example.com Let's Encrypt certificate with Certbot's DNS-01 challenge: Cloudflare plugin, API tokens, manual mode, renewal and installing it.
Get a free Let's Encrypt certificate for Nginx with Certbot: install, issue, redirect HTTP to HTTPS, test auto-renewal and fix common Certbot errors.
Connect Nginx to PHP-FPM correctly: sockets vs TCP, the fastcgi location, SCRIPT_FILENAME, protection against path tricks and pools per site.
How WebSockets work, the upgrade handshake, WebSockets vs SSE and polling, scaling across servers, proxies and load balancers, and security.
Compare WooCommerce, Magento, PrestaShop, OpenCart, Medusa and Shopify: costs, hosting needs, flexibility, scaling, and which fits your store.
Turn on HTTP/2 and HTTP/3 in Nginx: version requirements, the http2 and quic listen directives, Alt-Svc headers, firewall rules for UDP 443 and how to verify.
Install the .NET SDK or ASP.NET Core runtime on Linux from distro feeds or Microsoft packages, pick LTS vs STS, and run versions side by side.
Install a free Let's Encrypt certificate on Apache with Certbot: prerequisites, issuing, HTTP to HTTPS redirect, auto-renewal checks and common errors.
Use Nginx and Apache access logs for SEO: verify Googlebot, crawl frequency, status codes, wasted crawl budget and orphan pages via shell tools or GoAccess.
Install OpenLiteSpeed with LSPHP on Ubuntu, secure WebAdmin, create a virtual host, enable LSCache for WordPress and add HTTPS.
Create a systemd unit for a Node.js app: user, working directory, env files, restart policy, journald logs, security hardening and nvm paths.
Build a React single-page app and serve it with Nginx: SPA routing with try_files, caching hashed assets, gzip, HTTPS, API proxying and automated deploys.
Install Composer on Ubuntu, Debian or RHEL with checksum verification, run it without root, install dependencies for production and fix common errors.
Run scheduled tasks for web apps reliably: the right user and environment, Laravel, WordPress, Django and Node examples, locking, Docker, monitoring.
Run Directus with Docker Compose, PostgreSQL and Redis: secrets, admin bootstrap, file storage, HTTPS proxy, roles and permissions, backups.
WooCommerce on your own VPS or Shopify: total cost of ownership, transaction fees, customization, SEO, performance, maintenance, scaling and migration.
Practical Caddy reverse proxy configs: single apps, path routing, load balancing with health checks, headers, WebSockets, timeouts and auth.
Understand WSGI vs ASGI, when to use Gunicorn, Uvicorn, or Gunicorn with Uvicorn workers, how to size workers and threads, and production settings for each.
Run FastAPI in production: Uvicorn workers or Gunicorn with Uvicorn workers, a systemd service, Nginx reverse proxy, HTTPS and WebSockets.
Deploy a Ruby on Rails app: Ruby setup, credentials, assets and migrations, Puma as a systemd service, Nginx proxy, HTTPS and job workers.
Set up Google Search Console: domain vs URL-prefix properties, DNS verification, sitemaps, Performance and Pages reports, URL Inspection, and migrations.
Install Rust with rustup, manage toolchains and targets, build release binaries, make static musl builds, and avoid running out of RAM on a VPS.
Size PHP-FPM pools to your RAM: dynamic vs ondemand vs static, calculating pm.max_children, per-site pools, slow logs, the status page and common errors.