Deploy a MERN or MEAN Stack App on a VPS (Node.js and MongoDB)
Deploy a MongoDB, Express, React or Angular and Node.js app on a VPS: frontend build, API with PM2, secured MongoDB, Nginx proxy and SPA routing, HTTPS.
Blog
Stacks, databases, deployment and marketing for websites you host yourself.
Deploy a MongoDB, Express, React or Angular and Node.js app on a VPS: frontend build, API with PM2, secured MongoDB, Nginx proxy and SPA routing, HTTPS.
Find the right php.ini for CLI and PHP-FPM, and set memory, uploads, execution time, error display, OPcache, sessions and security options.
Install nvm on Linux, install and switch Node.js versions, pin versions per project with .nvmrc, set a default, and use nvm with cron, systemd and PM2.
Deploy an Astro or other static site to your own server: rsync, Nginx for clean URLs and trailing slashes, caching, HTTPS and atomic releases.
Track app errors with Sentry: SDK setup for Python, Node, PHP and JS, releases and source maps, alerts, privacy, self-hosting needs and the lighter GlitchTip.
Why pip refuses to install packages system-wide on modern Ubuntu and Debian (PEP 668), and the right fixes: virtual environments, pipx, apt packages or uv.
Install Nginx on Ubuntu, open the firewall, understand the config layout, host your first site, and manage, test and troubleshoot the service.
What SEO authority really means: third-party scores (DA, DR, AS), how Google judges authority with links and E-E-A-T, and practical ways to build it.
Add HTTP security headers in Nginx: HSTS, Content-Security-Policy, nosniff, frame protection, Referrer-Policy and Permissions-Policy.
Use .htaccess on Apache: AllowOverride, redirects and rewrites, HTTPS and www rules, caching and compression, blocking access and its performance cost.
Compare Nginx and Apache on architecture, performance, configuration, .htaccess, PHP handling and use cases, plus running Nginx in front of Apache.
Validate Nginx config with nginx -t, dump the merged config with nginx -T, reload without dropping connections and recover from errors.
Run Celery background jobs with Redis: configure the app, write tasks, run workers and beat with systemd or Docker, retries, concurrency, and Flower.
Check when an SSL certificate expires with openssl and curl, scan many domains with a script, test Certbot renewal and set up expiry alerts.
Understand the same-origin policy and CORS: origins, simple vs preflighted requests, key headers, credentials, common errors and safe setups.
Benchmark web servers with wrk and ab: threads and connections, latency and requests per second, Lua scripts for POST, and avoiding misleading results.
Fix Nginx 504 Gateway Timeout: find the slow upstream, raise proxy and FastCGI timeouts correctly, and fix slow queries and overload.
Install Caddy from the official repository, serve a static site with automatic HTTPS, understand the Caddyfile, run PHP via FastCGI, and manage the service.
Serve a Vue 3 + Vite app with Nginx: history-mode routing fallback, base paths, build-time env variables, caching, API proxying and HTTPS.
Install Magento 2.4 on an Ubuntu VPS: requirements, PHP-FPM, MySQL, OpenSearch, Composer keys, setup:install, Nginx, cron, caching and production mode.
Compare npm, Yarn and pnpm on speed, disk usage, lockfiles, workspaces and strictness, how Corepack pins versions, and which to choose for servers and CI.
Prepare Django for production: DEBUG off, secrets and ALLOWED_HOSTS from the environment, HTTPS and secure cookies, database, caching, logging, checks.
Install PrestaShop on a VPS: requirements, PHP extensions, MySQL, web or CLI installer, Nginx config, HTTPS, post-install security and performance.
Static site generators compared: Astro, Hugo, Eleventy, Jekyll and Next.js export by speed, language, templating, content features, and hosting on a VPS.