Southampton maintained their unbeaten start to the Championship season as they held-off battling QPR at St Mary's.
Sam Edozie's first goal for the club put Saints ahead but Jack Colback thumped the visitors level within two minutes.
It needed Adam Armstrong's fine volley - his fourth goal in as many league games - to decide the points in the final half-hour as Saints won at home for the first time since March.
Saints, who were without Nathan Tella and Che Adams, both linked with transfers away from the club, have 10 points from four games while Rangers have lost three of their four matches.
With Tella reportedly in Germany ahead of a move to Bayern Leverkusen and Adams not involved amid speculation about a move back to the Premier League, Russell Martin handed a start to 17-year-old Sam Amo-Ameya while new signings Flynn Downes and Ryan Fraser made their Saints debuts off the bench.
Hoops keeper Asmir Begovic held an early header from Carlos Alcaraz before the deadlock was broken on 30 minutes when Edozie latched onto a defence-splitting pass from former Rangers man Liam Manning, cut in from the left and fired low past the keeper.
Saints' defensive frailties immediately returned and Paul Smyth spurned the chance to put Sinclair Armstrong in within seconds of the restart, but less than two minutes later the visitors were level with their first attempt on goal as Colback, making his first QPR start, collected a loose ball on the edge of the box and fired low past Gavin Bazunu and in off the inside of the post.
Armstrong had a tap-in ruled-out for offside after Bazunu had denied Ilias Chair after a mesmerising run and the Saints keeper also needed to thwart Armstrong before the break and Chair twice more after the turnaround.
Smyth rattled the crossbar with an angled drive soon after as Rangers grew in confidence, but Saints restored their lead against the run of play on 64 minutes as Armstrong controlled a strong pass from Manning into the air and then smashed a shot on the swivel across Begovic and into far corner.
Rangers almost snatched a point at the death but 18-year-old Rayan Kolli was unable to capitalise after being played through by Osman Kakay as Saints made it their longest unbeaten run since February 2022.