If one morning you cannot print anymore with
system-config-printer doesn't show installed printers but that
you must start a service, or the CUPS web interface throws a 404 Not
Found in your face, or this cursed message pops up in your
journalctl -xe outputs:
The unit org.cups.cupsd.service has entered the 'failed' state with result 'protocol'
Then it's very likely that the config file
/etc/cups/cupsd.conf has bad syntax (in my case the entire
file was replaced by HTML code !).
The answer is to execute this:
su -c 'cp /etc/cups/cupsd.conf.O /etc/cups/cupsd.conf'
My CUPS version is 2.3.3 and I'm running Arch, so maybe in others distros the 'O' is replaced by 'default'
As always, thanks for reading and have a good time.