Antminer – Web Interface Not Loading
Informational — Monitor and address as needed
Symptoms
- Browser returns ERR_CONNECTION_REFUSED or ERR_CONNECTION_TIMED_OUT on http://<miner-ip>/
- http://<miner-ip>/ returns 502 Bad Gateway, 504 Gateway Timeout, or a blank white page
- Login page loads but POSTing credentials returns blank or 500 Internal Server Error
- ping <miner-ip> succeeds — the control board is alive on the network
- cgminer API on TCP 4028 answers a version query with valid JSON — miner is hashing
- Pool dashboard shows the worker online submitting shares at expected hashrate
- One miner on a multi-miner farm is web-unreachable while the rest respond normally
- Multiple miners lost their web UIs simultaneously after a router reboot or DHCP refresh
- The miner's IP changed (new DHCP lease) and the old bookmark points at the previous address
- curl -v http://<miner-ip>/ shows Connection refused or Failed to connect... Connection timed out
- Access via hostname fails but raw IP works, or vice versa
- Symptom began right after a Bitmain firmware update, factory reset, or custom firmware flash
Step-by-Step Fix
Confirm the miner's actual current IP via your router's DHCP lease table or the Bitmain IP Reporter utility (2-second press of the IP Report button, UDP 14235 listener on Windows). Compare against the IP you're typing — if DHCP rotated after a router reboot, your bookmark is stale. Updating to the current IP alone resolves roughly one in three ERR_WEB_UI cases on home LANs.
Hard power-cycle the miner for a full 30 seconds at the breaker or by unplugging at the PSU C19/C13 connector. Not a soft reboot. This clears the control-board RAM, forces lighttpd / nginx to respawn from a clean state, and recovers from kernel freezes that soft-reboot cannot fix. This alone resolves most wedged-webserver cases on stock Bitmain firmware.
Try a different browser (Chrome / Firefox / Safari) and a different device (phone on Wi-Fi). Use http:// explicitly — never https://, stock Bitmain never shipped TLS on port 80. If the UI loads on one and not another, your original browser has a stale cached 301 redirect, a dead session cookie, an HTTPS-upgrade extension, or a VPN/proxy in the way. Kill them all and retry.
Flush browser cache and hosts-file pins. In Chrome: chrome://net-internals/#dns → Clear host cache; Settings → Clear browsing data → Cached images and files. On Mac/Linux check /etc/hosts, on Windows check C:WindowsSystem32driversetchosts. A browser that visited the miner before a firmware flash can hold a cached redirect that no longer exists.
Disconnect any VPN and hop off corporate / guest Wi-Fi — try from a phone hotspot or a direct LAN cable. Some ISPs' managed routers block inbound HTTP on local subnets by default. If the UI loads off-VPN or off-corporate, you found a network-policy layer silently dropping port 80 to the miner.
Port-scan the miner with nmap -p 22,80,443,4028 <miner-ip>. Interpret: 80/tcp open + 4028/tcp open = mining fine, HTTP up, browser problem. 80/tcp closed + 4028/tcp open = mining fine, webserver crashed, reboot needed. Both closed = control board hung or off the network, go do a physical check. This is the single highest-leverage diagnostic test on this page.
Probe the HTTP server directly with curl -v http://<miner-ip>/ from any shell (Mac/Linux/WSL/Git Bash). The first response line tells you exactly which layer is broken: 200 OK = server fine, browser lying; 301 to https:// = cached upgrade, kill it; 502/504/500 = daemon up but hung worker, reboot; connection refused/timed out = daemon down or network issue.
Talk to the cgminer API on TCP 4028 directly: echo '{"command":"version"}' | nc <miner-ip> 4028. Valid JSON back = mining daemon is perfectly healthy and you're dealing purely with a webserver or browser problem. This is more reliable than ping because some stock Bitmain builds firewall ICMP while leaving 4028 open — it is the definitive 'is the miner alive' test.
Set the miner to a static IP via the web UI (once you regain access) or via SSH / SD recovery if needed. Use the 192.168.x.200+ range, outside your router's DHCP scope. This prevents ERR_WEB_UI recurring every time DHCP rotates — the single biggest preventive win for home miners running more than one unit.
Check the control-board Ethernet link LED on the back of the miner. Green LED solid = physical layer fine, move up the stack. LED off = bad cable, bad switch port, or dead PHY chip on the control board (see antminer-control-board-ethernet-port-failure). Swap the cable, try another switch port, test the cable on a laptop that's known to pull DHCP. Persistent no-link = Tier 3-4 hardware.
Flash DCENT_OS — D-Central's own open-source Antminer firmware — via SD card on S9/S17/S9 SE or via the stock web UI's OTA endpoint on S19/S21. You get hardened nginx, proper systemd supervision of bmminer (no more OOM kills wedging the webserver), log rotation out of the box, and per-chip diagnostics. Alternatives: Braiins OS+, LuxOS, Vnish. All four run a more reliable web stack than stock Bitmain.
SSH into the miner (DCENT_OS / Braiins OS+ / LuxOS / Vnish default to root SSH on port 22). Run ps aux | grep -E 'lighttpd|nginx|bmminer' to verify all daemons are up. If lighttpd or nginx is missing, /etc/init.d/lighttpd restart or systemctl restart nginx. Then tail -50 /var/log/lighttpd/error.log or /var/log/nginx/error.log for the actual error line behind 502/500 responses.
Check eMMC health and memory: df -h (watch / at >90% full — rotate /var/log/* and clear /tmp), free -m (available RAM <50 MB = OOM territory), and dmesg | grep -iE 'mmc|ext4|error|oom'. EXT4-fs error or MMC I/O error = control-board eMMC is failing, reflash is a temporary fix only. OOM killed = rotate logs, consider migrating to DCENT_OS which handles memory pressure cleanly.
Re-flash the miner's firmware via SD card recovery (S9/S17/S9 SE: short the SD-card slot header, insert Bitmain recovery image on FAT32 microSD, power on, wait for LED pattern) or via OTA on S19/S21. Use the exact image matching your hardware revision — wrong rev bricks the control board. Re-flashing clears most soft-state corruption and ~80% of recurrent ERR_WEB_UI cases on otherwise-healthy hardware.
Inspect the lighttpd / nginx config on an unlocked stock build. SSH in, cat /etc/lighttpd/lighttpd.conf — look for stray $HTTP["scheme"] == "https" redirect blocks left over from community images, or broken fcgi worker pools. Remove the redirect, restart the daemon, verify http:// works again. Community-shared firmware images sometimes force TLS that the hardware doesn't serve — a common 'why is my browser timing out' trap.
Stop DIY when: two full power cycles haven't restored port 80, dmesg shows recurring MMC I/O errors, SD-card recovery only holds for days, the Ethernet link LED is dead on a known-good cable/port, or a custom-firmware flash left the board unresponsive on every port. These are bench-repair situations. Book a D-Central ASIC Repair slot.
D-Central bench process: control-board diagnostics with test fixtures, eMMC health check via manufacturer tools, reflash to known-good firmware with a fresh filesystem, eMMC chip replacement if needed (Samsung/SanDisk eMMC 5.0/5.1 packages depending on board revision), or full control-board swap from tested inventory. Hashboards stay with you — only the control board needs to ship if the hashboards still answer on 4028.
Ship the control board alone in an anti-static bag, double-boxed with at least 5 cm foam on every side. Include a note with observed symptoms, firmware version, when the problem started, and whether hashboards still answered on 4028. Clear diagnostic notes save bench time and your repair cost; a loaner control board can keep the miner earning while yours is on the bench if your pool cannot tolerate the downtime.
When to Seek Professional Repair
If the steps above do not resolve the issue, or if you are not comfortable performing these repairs yourself, professional service is recommended. Attempting advanced repairs without proper equipment can cause further damage.
Related Error Codes
Still Having Issues?
Our team of Bitcoin Mining Hackers has been repairing ASIC miners since 2016. We have seen it all and fixed it all. Get a professional diagnosis.
