Troubleshooting
Common issues and how to fix them.
Domain not resolving
Symptom: Browser shows "This site can't be reached" when visiting your domain.
Fix:
- Check that the domain is enabled (toggle is on) in LocalDomain
- Check the status bar — both Daemon and Caddy should show "Running"
- Make sure your dev server is actually running on the target port
- Try restarting services from the system tray menu
HTTPS certificate warnings
Symptom: Browser shows "Your connection is not private" or certificate errors.
Fix:
- Check the status bar for CA Trusted — if it doesn't show, go to Settings and click "Install CA"
- On Linux, Firefox and Chrome use their own certificate stores. You may need to import the CA certificate manually into your browser
- Try regenerating the certificate: delete the domain and re-add it
Daemon not starting
macOS
# Check daemon status
sudo launchctl list | grep localdomain
# View daemon logs
sudo log show --predicate 'process == "localdomain-daemon"' --last 5m
# Restart daemon
sudo launchctl kickstart -k system/com.localdomain.daemonWindows
# Check service status
sc query localdomain-daemon
# View logs
Get-EventLog -LogName Application -Source localdomain-daemon -Newest 20
# Run daemon in foreground for debugging
target\release\localdomain-daemon.exe --consoleLinux
# Check service status
sudo systemctl status localdomain-daemon
# View logs
sudo journalctl -u localdomain-daemon -f
# Restart daemon
sudo systemctl restart localdomain-daemonPort conflict
Symptom: Caddy fails to start or a domain doesn't work.
Fix: Make sure nothing else is using port 80 or 443:
# macOS / Linux
sudo lsof -i :80
sudo lsof -i :443
# Windows
netstat -ano | findstr :80
netstat -ano | findstr :443If another process (like Apache, Nginx, or IIS) is using those ports, stop it or change its configuration.
XAMPP Apache not starting (port 80 conflict)
Symptom: XAMPP Apache fails to start after enabling LocalDomain, or LocalDomain Caddy fails to start while Apache is running.
Why it happens: both services are trying to bind to port 80.
- LocalDomain HTTP listener defaults to
80 - XAMPP Apache also often defaults to
Listen 80
Only one process can own port 80, so one of them fails.
Recommended fix:
- Change Apache
Listento another port (for example8080) in XAMPP config - Restart Apache
- Re-scan or refresh XAMPP settings in LocalDomain (it auto-detects Apache port from config)
After this, LocalDomain keeps serving your friendly domains on 80/443 and reverse proxies to Apache on the new port.
For full details, see XAMPP Service.
Windows SmartScreen warning
The app is not code-signed for Windows. On first launch you'll see a SmartScreen warning. Click More info then Run anyway.
Linux CA trust limitations
update-ca-certificates covers system tools (curl, wget) but not Firefox or Chrome. These browsers use their own certificate stores (NSS). You may need to manually import the CA certificate:
- Find the CA cert at
/var/lib/localdomain/certs/ca.pem - In Firefox: Settings → Privacy & Security → Certificates → Import
- In Chrome: Settings → Privacy and Security → Security → Manage certificates → Import
Still stuck?
Contact us and we'll help you out.