linktitle = "_pentium.nfo"
title = "_pentium.nfo"
url = "piracy/NFO/_pentium.nfo.html"
linktitle = "_PENTIUM.NFO"
title = "_PENTIUM.NFO"
url = "piracy/NFO/_PENTIUM.NFO.html"
Hugo does not render a page for _PENTIUM.NFO as expected and attempting to coerce page rendering using the render = truebuild option results in the same result.
Given disablePathToLower = true in config Hugo should render one page for each of _pentium.nfo.md and _PENTIUM.NFO.MD. Unexpected behavior exists for both hugo and hugo server commands. Tested with Hugo 0.70.
Please note NFO files are linked from the HTML pages rendered by the markdown files mentioned in OP. The MIME type for those is text/plain backed by an HTML file as shown here. So long as the names aren’t the same from a case-insensitive standpoint the files render fine. However, I’d still expect hugo to render case-sensitive pages when disablePathToLower is enabled.
Oh I see, pardon the misunderstanding. I updated the topic title again.
So basically you are expecting to output both
piracy/NFO/_pentium.nfo.html
AND piracy/NFO/_PENTIUM.NFO.html
WITH
disablePathToLower = true
You surely must be aware that search engine results are not case aware and your site would probably throw duplicate content warnings.
Regarding Hugo I am not in a position to know 100% but I wouldn’t be surprised if what you asked caused what is known as a race condition meaning Hugo wouldn’t know which page with the identical (yet with different case) URL would need to be rendered first.
Yes, that’s an excellent summary. I got lucky with the data set I’m working with (57,000 files) in that there are very few of the above scenarios present in the codebase. But it is a gotcha I wanted to call out here in case someone in the future has this same issue. Thanks again.