Shrewsbury 1 Portsmouth 2 - Report
Ten-man Shrewsbury Town were denied a creditable home point against Portsmouth by former player Louis Thompson's stunning late long-range strike.
Steve Cotterill's side led through the returning Luke Leahy's early header but Aiden O'Brien drew Danny Cowley's visitors level on half hour.
Moments later Town - who lost David Davis to injury - received their sixth red card of the season as Josh Vela was shown a deserved red for swiping at Ronan Curtis.
The hosts battled and defended well one man down but Pompey, who are hunting a late play-off charge, found a winner six minutes from time as ex-loan midfielder Thompson, who had a spell at Salop in 2019, curled a late stunner over Marko Marosi from 25 yards to leave 18th-placed Shrewsbury without a win in eight League One games.
After last Saturday's clash against Morecambe fell foul to the rain, there were thankfully no issues with the Montgomery Waters Meadow as Pompey made the long trip from Hampshire.
Portsmouth were also fresh off an inadvertent break, as their game at Crewe on Saturday also fell to the weather. Rising water in Shropshire had no effect on the contest going ahead.
Cotterill handed Tom Flanagan a long-awaited full Shrewsbury debut after the debut joined on a permanent deal from Sunderland on deadline day at the end of last month.
He started at left centre-half as George Nurse was shuffled out to left wing-back.
Town's other changes saw a return to the starting line-up for midfielder Leahy, from a two-game ban, and a surprise start for teenager Tom Bloxham, coming in for Ryan Bowman, who was without a goal in 10 games.
Cowley's visitors included former Sunderland frontman O'Brien, who marked his first start with a goal.
The contest took some 10 minutes to settle down and for action of note to take place but, when it did, Town should have found themselves behind.
And it was a messy error in Town's backline, as Elliott Bennett's square ball from the right position was left by Ethan Ebanks-Landell and in sneaked Curtis through on goal, but the Republic of Ireland international could only skew a first-time finish badly wide of Marosi's left post.
That mishap aside, Cotterill's men had started well and responded with some dangerous balls into the visitors' box.
They almost edged ahead before Leahy did find the net. A fine run towards the left byline by wing-back Nurse allowed him to pull a low cross back for centre-half Matthew Pennington, whose fierce first-time strike was flying in until an excellent goalline clearance from Pompey's Sean Raggett.
But it was no surprise when it was the hosts who took the lead from that resulting corner through the returning Leahy. Town's midfield man connected to a well-delivered deep Bennett dead ball from the left and took advantage of keeper Gavin Bazunu's flap to turn home with a close-range header for his seventh goal of the season and second in two games.
Town led and looked good value for it as they knocked the ball around well and fans responded positively.
But progress was checked on 20 minutes when holding midfielder Davis yelped in pain in front of the dugout having appeared to twist his right ankle in an awkward but innocuous fall.
The experienced midfielder was helped off and could put no weight on his foot. He was replaced by loanee Tyrese Fornah.
Town's slender lead lasted until just shy of the half hour. The visitors' equaliser was a touch messy and tad controversial but they will not mind a jot.
A right-sided cross was punched insufficiently from Marosi, for the lively Denver Hume to fire towards the corner before O'Brien's instinctive flick made sure despite Ebanks-Landell's scrambled efforts to clear off the line.
The assistant over the far side was in no doubt and waved his flag furiously to signal a goal.
Then disaster for Town as, barely two minutes later, they were down to 10 men through a rash and needless swipe from Vela.
Leahy was already on the deck but Portsmouth played on a rush of blood on the halfway line saw Vela swipe Curtis after the ball had gone. It looked a clear decision for referee Sebastian Stockbridge.
Salop were forced to reorganise and the visitors forced two gilt-edged openings prior to the interval but Hume flashed a diving header wide and George Hirst's header was kept out by an excellent Marosi save.
Pompey signalled their second-half intentions with the half-time introduction of livewire Marcus Harness for defender Hayden Carter.
Town to their credit responded well but Pompey upped the ante and goalscorer O'Brien saw a crisp volley well watched by Marosi on the hour.
Cowley's side forced a great chance midway through the half but Hirst somehow missed his close-range header from Hume's fine cross.
Then Town defender Matthew Pennington almost nodded his side ahead with an awkward header from a free-kick, but it flew just over.
Marosi was at his his best to get down sharply to keep out another flicked Hirst effort as Pompey turned the screw and eventually it told, but the contest took a superb side-footed, curled effort from Thompson to decide it as Town's former player curse struck again.
Teams
Shrewsbury Town (3-5-2): Marosi; Pennington, Ebanks-Landell (c), Flanagan; Bennett (Janneh, 87), Davis (Fornah, 22), Leahy, Vela, Nurse; Bloxham (Bowman, 75), Udoh.
Subs not used: Burgoyne, Pierre, Daniels, Bondswell.
Portsmouth (3-4-1-2): Bazunu; Carter (Harness, 45), Robertson (c), Raggett; Romeo (Hackett, 80), Tunnicliffe, Thompson, Curtis, Hume; Hirst, O'Brien (Walker, 65).
Subs not used: Webber, Ogilvie, Mingi, Jewitt-White.
Attendance: 5,862 (724 Portsmouth fans)
Referee: Sebastian Stockbridge