Pihole Web Interface Issue

Please follow the below template, it will help us to help you!

Expected Behaviour:

Pihole web interface should load correctly and display queries.

Actual Behaviour:

Pihole web interface is not loading any of the graphs or displaying any queries.

Debug Token:

lynd03xfef

I should also note that this issue happened right after updating my pihole with pihole -up. The issue is only the web interface - the DNS Server appears to work fine. I have tried everything I could find on the internet including pihole -r. I have even done a completly fresh install so any help would greatly be appreciated.

What platform and operating system is under this Pi-hole install?

Thanks for your reply. I am using Debian version 10.

On what hardware?

I'm not 100% sure about what hardware. Is there a command I can run?

Is it a Pi, a laptop, a network attached storage, etc.

Oh, sorry. It's just a Laptop. Has been working fine for well over a year.

Is Pi-hole running on a VM on the laptop, or is the laptop running Debian 10.

Pi-hole is running directly on Debian 10.

Try CTRL-F5 in the browser to refresh cached bits.
Or test with another browser and client.

I've actually seen a similar screenshot in several issues / threads today. Usually it is because the user is running the admin page behind apache and is missing a PHP package for sqlite3

See here:

Pi-hole 5 broke web interface dashboard · Issue #3354 · pi-hole/pi-hole · GitHub

Though per this user's debug token, their installation is stock lighttpd

I recon @ jfb would have spotted Apache.
Nice try :wink:

1 Like

I've tried this many times. sadly no luck.

Have you tried clearing browser cache or try access on another client/browser ?

Whats output for below:

php-cgi -m | grep 'json\|sqlite3'

EDIT:
Tail the logs live while browsing the page to see if errors show up:

sudo tail -f /var/log/lighttpd/{access,error}.log

Yes, I have tried this also. Below is the output of the command:

root@pi:/home/ape# php-cgi -m | grep 'json|sqlite3'
json
sqlite3
root@pi:/home/ape#

EDIT: I can't see any errors in the live logs.

==> /var/log/lighttpd/access.log <==
1589388256|192.168.0.76|GET / HTTP/1.1|200|459
1589388258|192.168.0.76|GET /admin HTTP/1.1|301|0
1589388258|192.168.0.76|GET /admin/ HTTP/1.1|200|27970
1589388259|192.168.0.76|GET /admin/api.php?getQueryTypes HTTP/1.1|200|114
1589388259|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388259|192.168.0.76|GET /admin/api.php?overTimeData10mins HTTP/1.1|200|3813
1589388259|192.168.0.76|GET /admin/api.php?overTimeDataClients&getClientNames HTTP/1.1|200|7480
1589388259|192.168.0.76|GET /admin/api.php?getForwardDestinations HTTP/1.1|200|257
1589388259|192.168.0.76|GET /admin/api.php?summaryRaw&getQuerySources&topClientsBlocked HTTP/1.1|200|1011
1589388259|192.168.0.76|GET /admin/api.php?summaryRaw&topItems HTTP/1.1|200|1082
1589388260|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388262|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388263|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388264|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388265|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388266|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388267|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388268|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388269|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388270|192.168.0.76|GET /admin/api.php?summaryRaw&getQuerySources&topClientsBlocked HTTP/1.1|200|1011
1589388270|192.168.0.76|GET /admin/api.php?summaryRaw&topItems HTTP/1.1|200|1082
1589388271|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388272|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388273|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516
1589388274|192.168.0.76|GET /admin/api.php?summary HTTP/1.1|200|516

Try this to reset/default a bunch:

I have just completed the above - now I can't access the web interface atall. I get a 403 Forbidden message:

sudo grep -v '^\s*#\|^\s*$' /etc/lighttpd/{lighttpd,external}.conf

?

Output is below:

root@pi:/home/ape# sudo grep -v '^\s*#|^\s*$' /etc/lighttpd/{lighttpd,external}.conf

/etc/lighttpd/lighttpd.conf:server.modules = (
/etc/lighttpd/lighttpd.conf:    "mod_indexfile",
/etc/lighttpd/lighttpd.conf:    "mod_access",
/etc/lighttpd/lighttpd.conf:    "mod_alias",
/etc/lighttpd/lighttpd.conf:    "mod_redirect",
/etc/lighttpd/lighttpd.conf:)
/etc/lighttpd/lighttpd.conf:server.document-root        = "/var/www/html"
/etc/lighttpd/lighttpd.conf:server.upload-dirs          = ( "/var/cache/lighttpd/uploads" )
/etc/lighttpd/lighttpd.conf:server.errorlog             = "/var/log/lighttpd/error.log"
/etc/lighttpd/lighttpd.conf:server.pid-file             = "/var/run/lighttpd.pid"
/etc/lighttpd/lighttpd.conf:server.username             = "www-data"
/etc/lighttpd/lighttpd.conf:server.groupname            = "www-data"
/etc/lighttpd/lighttpd.conf:server.port                 = 80
/etc/lighttpd/lighttpd.conf:server.http-parseopts = (
/etc/lighttpd/lighttpd.conf:  "header-strict"           => "enable",# default
/etc/lighttpd/lighttpd.conf:  "host-strict"             => "enable",# default
/etc/lighttpd/lighttpd.conf:  "host-normalize"          => "enable",# default
/etc/lighttpd/lighttpd.conf:  "url-normalize-unreserved"=> "enable",# recommended highly
/etc/lighttpd/lighttpd.conf:  "url-normalize-required"  => "enable",# recommended
/etc/lighttpd/lighttpd.conf:  "url-ctrls-reject"        => "enable",# recommended
/etc/lighttpd/lighttpd.conf:  "url-path-2f-decode"      => "enable",# recommended highly (unless breaks app)
/etc/lighttpd/lighttpd.conf:  "url-path-dotseg-remove"  => "enable",# recommended highly (unless breaks app)
/etc/lighttpd/lighttpd.conf:)
/etc/lighttpd/lighttpd.conf:index-file.names            = ( "index.php", "index.html" )
/etc/lighttpd/lighttpd.conf:url.access-deny             = ( "~", ".inc" )
/etc/lighttpd/lighttpd.conf:static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
/etc/lighttpd/lighttpd.conf:compress.cache-dir          = "/var/cache/lighttpd/compress/"
/etc/lighttpd/lighttpd.conf:compress.filetype           = ( "application/javascript", "text/css", "text/html", "text/plain" )
/etc/lighttpd/lighttpd.conf:include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
/etc/lighttpd/lighttpd.conf:include_shell "/usr/share/lighttpd/create-mime.conf.pl"
/etc/lighttpd/lighttpd.conf:include "/etc/lighttpd/conf-enabled/*.conf"
/etc/lighttpd/lighttpd.conf:server.modules += (
/etc/lighttpd/lighttpd.conf:    "mod_compress",
/etc/lighttpd/lighttpd.conf:    "mod_dirlisting",
/etc/lighttpd/lighttpd.conf:    "mod_staticfile",
/etc/lighttpd/lighttpd.conf:)

root@pi:/home/ape#

Thats not the config that comes with Pi-hole.
pihole -r and selecting repair should have fixed that.

Can try below:

sudo mv /etc/lighttpd/lighttpd.conf /etc/lighttpd/lighttpd.conf.bak

sudo wget https://raw.githubusercontent.com/pi-hole/pi-hole/master/advanced/lighttpd.conf.debian -O /etc/lighttpd/lighttpd.conf

sudo service lighttpd restart

And try again.