Cyriel Dessers’s second-half header gave unconvincing Rangers a hard-fought 2-1 win at St Mirren to keep their cinch Premiership title bid on track.

The Ibrox side arrived at the SMiSA Stadium without a league win in three matches and they were helped in the 33rd minute when Saints defender James Bolton put the ball in his own net attempting a goal-line clearance.

Home striker Mikael Mandron deservedly levelled with a well-placed header four minutes later and the second half was a struggle for the visitors before Dessers popped up with a powerful header in the 74th minute to ultimately seal the points.

Rangers had got back to winning ways in the Scottish Gas Scottish Cup semi-final against Hearts last week without defender Connor Goldson and he was left on the bench again. Borna Barisic came in for the injured Abdallah Sima, with Dujon Sterling moving from left-back into attack, while Fabio Silva replaced the injured Rabbi Matondo.

Ryan Strain, Conor McMenamin, Bolton and Mandron returned for the home side, who could have taken the lead inside a minute. Hesitating Gers skipper James Tavernier was caught in possession by Mikael Mandron but the Saints striker’s drive was saved by Ibrox keeper Jack Butland.

An open game unfolded further. Rangers midfielder John Lundstram, who has reportedly reached an agreement with Trabzonspor for a move in the summer, curled a shot wide of the far post after the home side cleared a corner then drove wide from the edge of the box.

Butland made another good save from a Mandron effort as the Ibrox defence melted again, although an offside flag went up.

McMenamin had a deflected shot saved by Butland before Silva broke clear at the other end but took too long and his shot was blocked by defender Alex Gogic for a corner, after which the Saints keeper made terrific saves from Lundstram and Tavernier.

Saints fans booed loudly when Portuguese attacker Silva appeared to go down too easily in the penalty area following a challenge by Gogic.

Rangers’ opener came from a short corner. Barisic’s deep cross was tipped by Hemming on to the head of Mohamed Diomande and when the midfielder’s header came back across goal, Bolton could only turn it over the line in trying to keep Dessers at bay.

However, the Paisley side were soon level when Mandron held off defender Leon Balogun to head skipper Mark O’Hara’s swirling cross low past Butland.

Saints sensed another goal was there for the taking and Butland made a world-class save from Bolton’s shot just before the break.

Winger Ross McCausland replaced the ineffective Silva in the 55th minute as Rangers struggled to show any discernible improvement. The Govan side were at times visibly frustrated with their inability to gain control of the game.

In the 67th minute Gers midfielder Todd Cantwell drove into the St Mirren box but curled the ball past the far post.

However, it was a cross of real quality which helped restore Rangers’ lead, Tavernier’s pin-point delivery from the right finding the head of Dessers who headed past Hemming to the relief of the Gers fans behind the goal.

A miraculous goal-line clearance from Gogic stopped substitute Tom Lawrence making it 3-1, the Buddies defender somehow making up yards of ground, with Balogun’s tackle on Saints substitute Toyosi Olusanya at the other end moments later equally significant.