Posts

Showing posts from January, 2026

Mastering WordPress Multisite in cPanel: A Complete Guide

Image
Mastering WordPress Multisite in cPanel: A Complete Guide WordPress Multisite is a powerful feature that allows you to run a "network" of multiple websites from a single WordPress installation. For users managing their hosting through cPanel, this setup offers an efficient way to manage themes, plugins, and core updates for dozens or even hundreds of sites simultaneously. Whether you are building a university network, a franchise system, or a personal blog collection, understanding how this architecture works is the first step toward better web management. How Multisite Works Under the Hood Unlike a standard installation, a Multisite network shares its core PHP files and a single database. When you add a new site to the network, WordPress doesn't create a new folder on your server; instead, it creates unique tables within the existing database (e.g., wp_2_posts) and organizes media files into si...

Docker Survival Guide: Downgrading and Fixing Persistence

Image
If you've been self-hosting for a while, you know the drill: you see an update, you click pull, and suddenly—everything breaks. Recently, a bug in the latest version of File Browser caused some headaches, requiring a strategic downgrade to a stable version. But there was a catch—my database wasn't persistent! In this post, I’ll show you how to downgrade safely and, more importantly, how to rebase your directory so your settings never vanish again. The Scenario: Buggy Updates Sometimes, "latest" isn't "greatest." Due to recent compilation bugs in the current File Browser release, the community recommendation is to pin your version to v2.35.0 . If you just change the tag and restart, you might realize your users and settings have disappeared. This happens because the database was living inside the container's temporary filesystem. Step 1: The "Self-Contained" Directory Strategy Instead of letting Docker...

Hosting More Than One Thing on Your Home Server? Here's the Noob-Friendly Way!

Image
The Smart Way to Host Multiple Apps: Nginx Reverse Proxy & Docker Hey fellow home server enthusiasts! So, you've got your Debian 12 box humming along, maybe with Docker running Nextcloud like I do. You've even bravely opened up some ports on your router (high five for that!). But what if you want to host another cool thing, like a Git server for your projects? That's where I was scratching my head too! Turns out, you don't need to open a whole bunch of new ports. The secret sauce is something called a reverse proxy . Think of it like a super-smart doorman for your server. Wait, What's a Reverse Proxy? Imagine you have one main entrance to your apartment building (that's your server's IP address and ports 80/443). Now, inside, you have different apartments (your Docker containers, like Nextcloud and your future Git server). The reverse proxy (in our case, Nginx ) stands at the entrance and knows which visitor (request) needs to go t...

Resolving Common Nextcloud Security & Setup Warnings in Docker

Image
Keeping your Nextcloud instance healthy and secure requires addressing its "Security & setup warnings." These alerts, often seen after updates or initial setup in a Docker environment, point to potential performance bottlenecks or misconfigurations. This guide walks you through resolving the most common warnings using occ commands and minor configuration adjustments. The Warnings We're Fixing: AppAPI deploy daemon: AppAPI default deploy daemon is not set. Errors in the log: "X errors in the logs since..." Mimetype migrations available: "One or more mimetype migrations are available." Database missing indices: "Detected some missing optional indices." Prerequisites: Ensure you have SSH access to your Docker host and can run docker exec commands. Replace nextcloud-stack-nextcloud-1 with your actual Nextcloud conta...

Solving Nextcloud Office (Collabora) "Unauthorized" and CSP Loading Errors

Image
Setting up Nextcloud Office (Collabora Online) in Docker often leads to two frustrating errors: the "Unauthorized" message when opening documents and "Content Security Policy" (CSP) violations in the browser console. This guide explains how to fix these by correctly configuring your Docker environment and Nginx headers. The Symptoms A green checkmark in Nextcloud settings, but a "Document loading failed" or "Unauthorized" error when clicking a file. Browser console logs showing: Violates the following Content Security Policy directive: "frame-src..." Network errors for l10n.js or cool.html . Step 1: Clean Docker Environment Variables Using complex regex or escaped characters (like \\ ) in your docker-compose.yml can cause Nextcloud to generate malformed URLs. Use clean domain strings instead. # Collabora (CODE) Service Section collabora: image: collabora/code:l...

Setting Up File Browser with Nginx Proxy Manager and Troubleshooting 502 Errors

Image
Recently, I set up File Browser behind Nginx Proxy Manager on a Docker host. While the setup was straightforward, I ran into several common issues and learned how to resolve them. 1. File Browser Container Issues After starting the container, logs showed repeated errors like: chown: changing ownership of '/srv': Read-only file system s6-applyuidgid: fatal: unable to set supplementary group list: Operation not permitted This happens when File Browser runs as a non-root user but the volume permissions are not set correctly. To fix it: Ensure the host directory is owned by the UID/GID expected by File Browser (default 33:33 for linuxserver images). Mount the volumes with proper permissions, for example: sudo chown -R 33:33 /path/to/config /path/to/srv After correcting permissions, the container started successfully and initialized the database. 2. Configuring Nginx Proxy Manager When adding File Browser as a proxy host: ...