Problems since Pihole update and lighttpd deactivation

Expected Behaviour:

After a major Pi Hole update, I was asked if I wanted to disable lightpd, which was recommended, so I decided to do so. That's when the nightmare began. I could no longer access the Pi Hole web interface. I was able to fix it with a few makeshift solutions, but unfortunately, the problems continue. There is a new update available from Core Version 6.06 to 6.1.2. The web version has been listed as N/A since the major update and FTL 6.1 to 6.2.3.

I thought, okay, I'll run the update, it's always worked fine before, but unfortunately it didn't work.

It seems to start the update, but then I just get the message

Error: Web Admin repo is missing from system!

Please re-run the install script from https://pi-hole.net

Unfortunately, I have to say that I am a complete beginner when it comes to this. Everything had been working fine before, but since the update and deactivating lighttpd, there have only been problems. Is there anything I can do to get everything back to how it was before, so that everything works as it should again? I would be very grateful for any help.

Debug Token:

https://tricorder.pi-hole.net/j6e4VrV2/

Pi-hole version 6 has the web server built in, it no longer uses lighttpd, but it looks like you didn't fully disable lighttpd, it's still running:

[✗] tcp:0.0.0.0:80 is in use by lighttpd (https://docs.pi-hole.net/main/prerequisites/#ports)

The web interface moved to a different port because lighttpd was still on port 80:

[✓] tcp:0.0.0.0:443 is in use by pihole-FTL
[✓] tcp:0.0.0.0:8080 is in use by pihole-FTL

port = "8080o,443os,[::]:8080o,[::]:443" ### CHANGED, default = "80o,443os,[::]:80o,[::]:443os"

So the access would be http://pi.hole:8080 or https://pi.hole and ignore the certificate error.

The web interface files do seem to be missing, I'm not sure how that could happen, can you run the following command and paste the output in a reply:

sudo ls -la /var/www/html/admin

We can try to repair first, to do that you need to run:

sudo pihole -r and allow the repair process to complete.

lighttpd was deactivated, but then I couldn't access the web interface anymore, no matter what I tried. So I asked a friend to reactivate lighttpd so that I could access the web interface again.

I tried sudo pihole -r, but unfortunately I only got an error message.

"[i] SELinux not detected
[✓] Update local cache of available packages

[✓] Checking apt-get for upgraded packages... 12 updates available
[i] It is recommended to update your OS after installing the Pi-hole!

[✓] Building dependency package pihole-meta.deb
[✓] Installing Pi-hole dependency package

[✓] Supported OS detected
[i] Resetting local repos
[✓] Resetting repository within /etc/.pihole...
[i] Resetting repository within /var/www/html/admin...... Unable to reset /var/www/html/admin, exiting installer"

This won't work. lighttpd only works for Pi-hole v5 web interface.

Can you please generate a new debug log, upload it and post here only the Token. Your previous token is invalid.

After reactivating lighttpd, I was able to access the web interface again. Previously, I had been unable to access it.

New Token is: https://tricorder.pi-hole.net/c8nXOjAo/

OK.
Your debug log shows lighttpd is using port 80 and it also confirms the new web interface files are not installed.

This is not the new web interface and this won't work with Pi-hole v6.

If you want to finish the upgrade to Pi-hole v6 you will need to disable/uninstall lighttpd and also find out why the installer is failing to access /var/www/html.


Looks like your v5 installation was not using the default directory for the web interface files, but the current debug log can't show where the files are.

The debug log confirms the files are not present were they should be.

The files should be on this path:

     [webserver.paths]
       webroot = "/var/www/html"
       webhome = "/admin/"

But the command to read the repository is failing:

*** [ DIAGNOSING ]: Web version
git status failed

Can you post the output of this command?

sudo ls -la /var/www/html

Yes, sorry for the Late Reply

total 16
drwxr-xr-x 4 www-data www-data 4096 Dec 24  2023 .
drwxr-xr-x 3 root     root     4096 Jun 23  2022 ..
drwxr-xr-x 9 www-data www-data 4096 Apr  8 00:14 admin
drwxr-xr-x 2 www-data www-data 4096 Nov 18  2022 pihole

@rdwebdesign

I also hit a bit of a hiccup when upgrading. Fixed by manually removing lighthttpd

Web Interface not loading after upgrade

This was mentioned in the announcement post, but it bares repeating:

On initial launch – FTL will attempt to bind to port 80 for plain HTTP. If it cannot bind to this port, it will fallback to port 8080 (So you might need to access the web interface at http://pi.hole:8080/admin) ``

You can check which port FTL is listening on by running the command pihole-FTL --config webserver.port or by looking for the config value in /etc/pihole/pihole.toml you can even change it

lighttpd still running after upgrade

Most users should have been offered a dialog box during the upgrade to choose to disable lighttpd, and most users should have chosen to do so. Unless you are using lighttpd for any other web service, it is no longer needed.
Please run the following to disable it: sudo systemctl stop lighttpd && sudo systemctl disable lighttpd

Also, it may be minor, but the URL changed for the web interface so don't use an old link. Instead it is at http://pi-hole:8089/admin/login (now after reading the above I can't work out why mine is on 8089 instead of 8080)

But the key is - get rid of lighttpd. And also hope you spotted your new web password that was lost in the scroll of text during upgrade...

For me I didn't read any of the docs on this website, and just punched the Update that day. Some reason or other warning messages failed to display and Sod's Law said I didn't even take a backup so was stuck researching via my mobile. The thread that saved me that day was this one: Pi-hole update caused web to stop and no resolution

Your previous posts and debug logs show your Pi-hole was initially using port 8080.

Apparently this was changed later, probably by a typo in a command (9 is very close to 0 on the keyboard).

If you removed lighttpd, it's probably safe to return your Pi-hole to port 8080 or even 80, but to make sure, please generate a new debug log to help us suggest the best port.

So, if I understand correctly, I now have to deactivate lighttpd?

And are the files correct, or is something missing? I'm a little confused right now. Unfortunately, I don't have much experience ^^, I'm just trying to familiarize myself with all this stuff.

If you only used lighttpd for Pi-hole v5, then you don't need it anymore and you can uninstall it.

If you use lighttpd to serve other web pages or services, then you need to use different ports for lighttpd and Pi-hole v6.

I don't think I'll need it anymore if v6 no longer requires it.

If it helps solve my actual problem, I can uninstall it. What do I need to do?

To disable lighttpd run sudo systemctl stop lighttpd and sudo systemctl disable lighttpd

To remove lighttpd you can do either:

  • remove the lighttpd package but keep configuration files: sudo apt remove lighttpd
  • remove the lighttpd package and remove configuration files: sudo apt purge lighttpd

After removing lighttpd you can also remove unused dependencies: sudo apt autoremove

Okay, I have executed all commands. The last message was that everything was completed successfully.

Unfortunately, there is still the problem that I can no longer update my Pi-Hole.

sudo pihole -up
[✓] Supported OS detected
[✓] Update local cache of available packages
[✓] Building dependency package pihole-meta.deb
[✓] Installing Pi-hole dependency package

[i] Checking for updates...
[i] Pi-hole Core: update available

Error: Web Admin repo is missing from system!
Please re-run install script from https://pi-hole.net

Please generate a new debug log. The previous one expired a long time ago.

I've already made quite a bit of progress. I tried running pihole -r but it failed, so I ran sudo rm -rf /var/www/html/admin and then sudo pihole -r again. Now the version display of the web version is working again and the update has also worked.
However, I'm sending another log so I can be sure that all problems have really been fixed.

https://tricorder.pi-hole.net/QNY9FJYY/

Your new log shows the web interface files were correctly installed and Pi-hole can retrieve the Web version:

*** [ DIAGNOSING ]: Web version
[✓] Version: v6.2.1
[i] Remotes: origin	https://github.com/pi-hole/adminlte (fetch)
             origin	https://github.com/pi-hole/adminlte (push)
[i] Branch: master
[i] Commit: v6.2.1-0-gcc1cc28

It also shows the web server was correctly started using ports 8080 and 443:

[✓] tcp:0.0.0.0:8080 is in use by pihole-FTL
[✓] tcp:0.0.0.0:443 is in use by pihole-FTL
[2025-07-08 19:41:57.956 CEST 4683] Initializing HTTP server on ports "8080o,443os,[::]:8080o,[::]:443"

I am now having the problem again that I cannot access the web interface. I tried ‘http://pi.hole/admin/login’ but the interface is not accessible via this address. However, it now works again via ‘https://10.0.0.42/admin/login’. Have I done something wrong that means the interface cannot be accessed via ‘pi.hole’?

No, your issue is related to ports.

Your settings are using port 8080, then you need to use the port on the URL.
Try:

Or using HTTPS: