icons/ was not copied alongside index.html. Icons are referenced by relative path, so both
paths have to travel together.
This is the most common problem, and it looks alarming while being entirely cosmetic — the links still work.
Every link is hand-written, so nothing validates it. Check that:
- The
hrefmatches the real filename, including case on a case-sensitive server. - The path is relative to where
index.htmlactually sits, not to where you edited it. - You are not looking at a leftover example row.
Leftover example rows from the shipped file. Delete every row you did not customise — see Usage.
Use lowercase:
docker pull ghcr.io/willtheorangeguy/apache-file-directory:mainGHCR requires lowercase image names, so the capitalised repository name does not work.
Check you are on the mapped port:
docker run -d -p 8000:80 ghcr.io/willtheorangeguy/apache-file-directory:mainThe container serves on 80 internally; the example maps it to 8000 on the host. Then use http://localhost:8000/.
That row ships commented out. Remove the surrounding <!-- and --> to enable it — see
Usage.
Its default target is ../, a relative path. If your page is not one level deep, replace it
with the real path.
Check the doctype is intact. The page is HTML 3.2 on purpose, and the layout depends on table-based markup that browsers treat differently in quirks mode. An editor that "helpfully" modernises the markup will change the appearance — see Architecture.
docs.yml deploys on push to main. Check the Actions tab; the badge in the README reflects
the last run.
They are plain text and nothing computes them. Whatever you typed is what shows.