Has anyone been able to get Site Domains working on Linux Mint 22.1 Cinnamon?

What issue or error are you experiencing?

Site Domains route mode on Linux Mint 22.1 results in bind() to 0.0.0.0:80 failed (13: Permission denied). Local host mode does work. I believe site domains did work before for me (right after a fresh install of Linux mint) but after updating the software on my machine it does not work anymore. I’ve tried:

  • Checking if any other process is using port 80
  • Deleting and reinstalling Local
  • Deleting nginx-* folders in ~/.config/Local/lightning-services/ (and authenticating the resulting dialog)
  • Manually setting correct ngingx capabilities using setcap and confirming with getcap ~/.config/Local/lightning-services/[nginx-version]/bin/linux/sbin/nginx
  • Deleting ~/.config/Local/run/router.

It seems like this bug has not been solved but I just wanted to check if there might be a fix now.


What steps can be taken to replicate the issue? Feel free to include screenshots, videos, etc

Setting router mode to Site Domains and launching a site


System Details

Linux Mint 22.1 Cinnamon
Cinnamon Version 6.4.8
Linux Kernel 6.8.0-60-generic

Local WP Version 9.2.4+6788


Local Logs

local-logs.zip (55.9 KB)


Security Reminder
Local does a pretty good job of scrubbing private info from the logs and the errors it produces, however there’s always the possibility that something private can come through. Because these are public forums, always review the screenshots you are sharing to make sure there isn’t private info like passwords being displayed.

Thanks for your report, logs and the steps you’ve tried so far, @alonsodude.

If libcap2-bin is installed on your system (Local’s installer should have added it for you), Local will attempt to run setcap on the nginx binary after checking with getcap if that’s needed; you shouldn’t need to do it manually, but it’s great that you’ve confirmed with getcap that capabilities seem correct.

Do you have AppArmor or anything else that might restrict services on port 80?

sudo aa-status should tell you if it’s running — you’re looking for a path to the Local nginx binary to see if it’s being restricted by AppArmor.

If AppArmor isn’t interfering with nginx, one “last resort” thing you can try is to change what Linux considers to be a priviliged port. By default anything under 1024 is privileged and requires cap changes. You can check the current value with:

sudo sysctl net.ipv4.ip_unprivileged_port_start

And drop it to 0 temporarily with:

sudo sysctl -w net.ipv4.ip_unprivileged_port_start=0

Then run Local and see if site domains work. If they do, you can make the above change permanent by adding the line below to /etc/sysctl.conf. I label this ‘last resort’, though, because it’s a security risk. Any process including those run by non-admin users will then be able to bind to lower port numbers like 80 and 443.

net.ipv4.ip_unprivileged_port_start=0

Then run sudo sysctl -p to apply those changes.

1 Like

Thanks for the suggestions @nickc. Setting ip_unprivileged_port_start=0 did get Site Domains to work, but I will just use local host mode for now. Thanks again.

1 Like

Thank you for letting us know @alonsodude!