Only just, though.
A crowd of 3,048 and those watching from their armchairs at home were made to wait for their entertainment, but when it came, it was worth it.
Harrogate gave as good as they got in the first half and spent the last quarter of an hour pushing hard for an equaliser their earthy endeavour merited but, ultimately, top-drawer goals from Bradon Haunstrup and Ronan Curtis made the difference on a cold night in North Yorkshire.
For a while we were not sure if this game was even going to happen. A 3G pitch had protected Harrogate Town’s payday against the worst of the Yorkshire weather, but fans were locked outside the ground in pouring rain until 10 minutes before the scheduled kick-off after a power cut.
“We’re Harrogate Town, we’ll play in the dark,” sang the home fans when the lights went out again 20 minutes before the new kick-off time of 8.40pm. Thankfully they were back on before the start could be delayed any longer.
By the then both sides knew what was facing them, with a visit from York City’s conquerors Altrincham awaiting the winners.
The Sulphurites looked more up for that judging by the way they sprinted out of the blocks.
The disrupted warm-ups perhaps contributed to three players going off injured in the first half, including Town’s Warren Burrell, who had been picked to play in the centre of a 4-4-2.
Portsmouth’s quality was beautifully showcased by their first-half goals, but they looked unable to cope when the hosts ran at them on the counter-attack, or when the ball was in the air around their former goalkeeper Craig MacGillivray’s net.
The opening goal came via the high road, a deep free-kick headed by Burrell, then Jack Muldoon, then Mark Beck for his third FA Cup goal of the season.
Another Beck header gave the lively Brendan Kiernan the chance to come in off the right, but he was tackled before he could add to the damage.
Just 12 minutes in, though, it was clear Kenny Jackett’s side were not in for an easy night.
Connor Hall, up from centre-back, headed another deep cross wide. When Muldoon squared the ball for Josh Falkingham, the midfielder’s shot was blocked.
Kiernan scorched down the right only for his cross to be cut out and when Beck flicked on a long ball from James Belshaw, Muldoon put his shot into the side netting.
Portsmouth, though, had League One quality on their side, and were back on level terms by then.
The position Haunstrup collected the ball in in the 18th minute was an innocuous one but the right-back played a one-two, cut inside and curled a lovely left-footed shot inside the far post.
Winger Curtis was linked with big-money moves to some high-profile clubs in the summer and showed why with the dipping long-range shot which put the visitors in front three minutes before half-time.
Pompey began the second period camped around Belshaw’s penalty area, without making much of it.
Former Doncaster Rovers centre-forward John Marquis and Ryan Williams had snap shots wide, the latter forced a save, then Anton Walkes almost put a volley into orbit. Marquis had two bites at a Gareth Evans cross, the first blocked, the second wide.
Kiernan had run his race, substituted aloing with fellow wide player Jack Diamond, the Sunderland loanee.
All Town could offer in return was a Ryan Fallowfield cross blocked on the hour, but the wonderful dinked pass from the impressive Falkingham was at least much-needed encouragement.
They built on it, George Thomson thumping wide from a Beck flick-on, then the centre-forward towering highest at a corner, only to pick out MacGillivray. As he headed over another with 12 minutes remaining, it began to feel like an equaliser was more likely than a third Pompey goal.
In fact, it was Pompey who came closest, Belshaw tipping Lee Brown’s cross-shot on to the post in the 80th minute, but Town responded almost immediately, Beck stabbing the ball to Alex Bradley. The substitute did not get hold of his shot, but MacGillivray did.
Played in – inevitably – by Falkingham with four minutes to go, Muldoon drove at the Portsmouth defence but by the time he saw a chink of light, the angle was to tight to find the net too.
It was a night to warm the hearts if not the toes of the home fans and although their Cup run is over, they can be optimistic of another strong push for the Football League on the evidence of last night.
Harrogate Town: Belshaw; Fallowfield, W Smith, Hall, G Smith; Kiernan (Bradley 70), Falkingham, Burrell (Emmet 32), Diamond (Thomson 62); Muldoon, Beck. Unused substitutes: Cracknell, Brown, Taylor, Jones,.
Portsmouth: MacGillivray; Haunstrup, Burgess, Ragett (Downing 32), Brown; Close, Naylor (Walkes 25); Williams, Evans, Curtis; Marquis. Unused substitutes: Bass, Bolton, Cannon, Harness, Pitman.
Referee: A Backhouse Carlisle