Match ends, Rangers 1, St. Johnstone 0.
- Rangers are first team to reach semi-finals
- St Johnstone are Rangers' second Premiership victims
- Rangers' fifth consecutive victory
- Saints' fifth game without a win
Lewis Macleod's late header was enough to break St Johnstone's resolve and send Rangers into the Scottish League Cup semi-final.
A tightly contested affair at Ibrox had seemed destined to enter extra time before Macleod's decisive touch four minutes from time.
St Johnstone will rue missing some decent chances to take the lead.
But Rangers also hit a post through Jon Daly, while Kris Boyd forced a good save from Alan Mannus.
For the Glasgow side, the victory was reward for their committed effort. It was also a boost to the Scottish Championship side's self-esteem as they knocked a second top-flight team out of the competition.
A sparse crowd bore witness to this game. The Rangers support is still trying to come to terms with the latest boardroom manoeuvres, which have left Mike Ashley with effective control of the club.
His two associates - Derek Llambias, the former Newcastle United managing director, and Barry Leach, the Sports Direct head of retail - sat in the directors' box.
The sight of Ibrox looking so bare, with only 13,023 in attendance, ought to have been of concern to them but it was also an indication of the depth of the discontent among the fans.
Previous midweek cup ties this season have attracted similar crowds and, at times, the efforts of the team have occurred in isolation from the boardroom politics.
The circumstances robbed Rangers of much of the benefit of being the hosts, while St Johnstone's advantage of being the Premiership side in a cup tie against a team from the next division down was diminished by their poor recent form.
Tommy Wright's side had lost five consecutive games before drawing on Saturday, and they set up with a formation that could contain Rangers, but they were not without ambition in possession.
Brian Graham had already curled one effort wide before Simon Lappin's shot from the penalty spot was blocked by a lunging Richard Foster.
With Michael O'Halloran's sharp movement and intent providing support to Graham, and Chris Millar playing with excellent discipline and poise in a defensive midfield role, St Johnstone had a solid foundation.
Rangers often laboured in trying to break the visitors down, but Macleod sent Boyd through on goal only for Mannus to rush out and block the striker's effort.
Both sides were comfortable in possession, and the game was evenly balanced, although Frazer Wright ought to have scored before half-time with a free header from Lee Croft's cross but sent the ball over.
There were setbacks to bear: Murray Davidson was carried off on a stretcher with a facial injury in the first half, and the same fate befell Steve Simonsen, the Rangers goalkeeper, in the second half after he collided with the post.
Restraint seemed to be left behind at the interval, both sides allowing the game to become more open.
Boyd had a shot deflected wide by Wright, then O'Halloran's effort across goal was tipped wide.
Even a change in personnel could not alter Rangers' fortunes, as Daly's first touch as a substitute was to head the ball against an upright. Then McCulloch was flagged offside as he headed in a Macleod free-kick.
Extra time seemed inevitable, but Fraser Aird's cross was perfect for Macleod's darting run into the penalty and the midfielder deftly headed into the net.
- 31SimonsenSubstituted forRobinsonat 54'minutes
- 4AirdSubstituted forSmithat 90'minutes
- 15BoydSubstituted forDalyat 74'minutes
- 18DavidsonSubstituted forMcDonaldat 23'minutes
- 4LappinSubstituted forCaddisat 75'minutes
- 22CroftSubstituted forMcFaddenat 90'minutes
- Steven McLean
- Shots on Target
Second Half ends, Rangers 1, St. Johnstone 0.
Corner, Rangers. Conceded by Liam Caddis.
Nicky Law (Rangers) wins a free kick in the attacking half.
Foul by Chris Millar (St. Johnstone).
Corner, Rangers. Conceded by Alan Mannus.
Foul by Ian Black (Rangers).
Steve Banks (St. Johnstone) wins a free kick in the defensive half.
Substitution, St. Johnstone. James McFadden replaces Lee Croft.
Substitution, Rangers. Steven Smith replaces Fraser Aird.
Corner, Rangers. Conceded by Alan Mannus.
Attempt saved. Ian Black (Rangers) right footed shot from outside the box is saved in the top centre of the goal.
Goal! Rangers 1, St. Johnstone 0. Lewis Macleod (Rangers) right footed shot from the centre of the box to the bottom right corner. Assisted by Fraser Aird.
Foul by Darren McGregor (Rangers).
Brian Graham (St. Johnstone) wins a free kick in the defensive half.
Attempt missed. Michael O'Halloran (St. Johnstone) right footed shot from the centre of the box misses to the right.
Foul by Kenny Miller (Rangers).
Chris Millar (St. Johnstone) wins a free kick in the attacking half.
Foul by Fraser Aird (Rangers).
Liam Caddis (St. Johnstone) wins a free kick on the left wing.