Why can’t PiHole connect with my nginx reverse proxy? I log into https://dns.thearknet.me/admin and it defaults back to HTTP.
All of my other servers can get HTTPS using the Nginx server and certificate. Just not Pi-Hole.
I know it’s just a setting issue that most people already know how to resolve. I have tried all the ones I could including changing location to /admin and adding additional flags. Here is my config. I do not know what relevant logs to check.
#DNS
server {
listen 80;
server_name dns.thearknet.me;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name dns.thearknet.me;
ssl_certificate /etc/letsencrypt/live/thearknet.me/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/thearknet.me/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/dhparams.pem;
location / {
proxy_pass http://10.0.1.2:80;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Host $server_name;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
}
}
Traditional log files don’t exist
root@REVERSEPROXY:~# cat /var/log/nginx/access.log
cat: /var/log/nginx/access.log: No such file or directory
root@REVERSEPROXY:~# cat /var/log/nginx/error.log
cat: /var/log/nginx/error.log: No such file or directory
I reboot the server each time.
I found the logs
cat /etc/nginx/nginx.conf
2025/11/26 14:52:46 [warn] 289#289: could not build optimal proxy_headers_hash, you should increase either proxy_headers_hash_max_size: 512 or proxy_headers_hash_bucket_size: 64; ignoring proxy_headers_hash_bucket_size
2025/11/26 14:53:56 [warn] 228#228: could not build optimal proxy_headers_hash, you should increase either proxy_headers_hash_max_size: 512 or proxy_headers_hash_bucket_size: 64; ignoring proxy_headers_hash_bucket_size
2025/11/26 14:53:56 [warn] 289#289: could not build optimal proxy_headers_hash, you should increase either proxy_headers_hash_max_size: 512 or proxy_headers_hash_bucket_size: 64; ignoring proxy_headers_hash_bucket_size
Added 2 lines to /etc/nginx/nginx.conf
proxy_headers_hash_max_size 1024;
proxy_headers_hash_bucket_size 128;
Rebooted. Nothing changes
PS C:\WINDOWS\System32> Invoke-Webrequest https://dns.thearknet.me
Invoke-Webrequest : The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
At line:1 char:1
+ Invoke-Webrequest https://dns.thearknet.me
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebException
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
nginx -v
nginx version: openresty/1.27.1.2