There are many possible solutions. The biggest problem is that HF signals wander ±2° in azimuth and ±30° in elevation due to ionospheric changes. You will need to trade gain for directivity, because HF DF accuracy comes from the narrow deep null, not the insensitive main lobe. Almost all HF DF techniques were operating during WW2. Many during WW1. Only interferometry using fields of small loops have emerged more recently.
A single, rotatable, tuned loop, will have a deep null.
Two rotatable loop antennas, mounted together with 5° between their axes, switch between them at 1 kHz, detect the 1 kHz in the received signal, and null that. The inverse system was the Lorenz beam landing system and Knickebein.
https://en.wikipedia.org/wiki/Battle_of_the_Beams
https://en.wikipedia.org/wiki/Battle_of_the_Beams#Knickebein
Two travelling wave wires, in a fan towards the target. Install series capacitors in the antenna wire, to give super-luminal velocity factor over the ground plane. That can have such a fine beam that you cannot find the target, back off a bit on the vf.
Crossed Bellini-Tosi loops, a two channel receiver, with one LO, feeding the x-y plates of an oscilloscope. Often used for broadband lightning direction detection.
https://en.wikipedia.org/wiki/Bellini–Tosi_direction_finder
HFDF, Huff-Duff, used to find submarines in the Atlantic.
https://en.wikipedia.org/wiki/High-frequency_direction_finding
https://en.wikipedia.org/wiki/High-frequency_direction_finding#Description