Match ends, Fraserburgh 0, Rangers 3.
Fraserburgh 0-3 Rangers
Josh Windass' hat-trick steered Rangers to victory over Fraserburgh and passage into the fifth round of the Scottish Cup.
Windass opened the scoring with a first-half penalty, after Jason Holt went down under Ryan Cowie's challenge.
The midfielder scored twice in 12 second-half minutes to seal his treble.
Fraserburgh's night got worse when Graham Johnstone was sent off for a foul on Joe Dodoo, two minutes after coming on.
The Ibrox side now face Ayr United at Somerset Park in the next round.
It was a dream fixture for Fraserburgh's players, who must have struggled to focus at work throughout the day with kick off looming.
The tight arena, with supporters almost crowding the touchline, helped generate a wonderful atmosphere, although Fraserburgh are investigating whether fake tickets were used by visiting fans, with the gates having to be closed with supporters still queuing when the ground reached capacity.
Anything other than a Rangers win would have been one of the biggest shocks of any Scottish Cup campaign.
It didn't materialise, but the home side deserve credit for making a game of it even when they were clearly beaten.
With nothing to lose and everything to gain, they started offensively, using the wind behind them to try to pressure their lofty opponents.
Marc Dickson struck an early effort that was way off target, but still encouraging for manager Mark Cowie.
The home side maintained a threat in the opening stages before Rangers began to assert more control.
Niko Kranjcar slipped a clever ball in behind for Jason Cummings, but home goalkeeper Peter Tait raced off his line to save well.
It was Kranjcar's next flick on the edge of the box that led to the key opening goal, a little creativity that Fraserburgh lacked for all their endeavour.
Jason Holt gathered the pass, then trod on the ball as he was challenged by Cowie. The award of a penalty seemed harsh, but Windass arrowed the ball into the corner.
Fraserburgh retained their focus when they might have lost their way. They had a penalty claim turned down when Willie West went to ground with Lee Hodson holding, but referee Greg Aitken was unmoved.
Kranjcar came close to a second when he fired from inside the box with the ball skimming off the top of the crossbar.
Referee Aitken had another penalty decision to deliberate when Holt went down again under a challenge from Bryan Hay, but waved play on.
The home side were never overawed and determinedly stuck to their task, limiting Rangers to few clear chances.
They were eventually undone by a simple goal. Kranjcar fed Windass, who slammed home easily with no opponent near him.
The tie was won and Windass completed an impressive personal performance when he cut in from the left and struck home low past Tait.
It turned a touch sour when substitute Johnston lunged into a challenge on Dodoo, receiving a red card just three minutes after coming off the bench.
Rangers had progressed comfortably, efficiently navigating the challenge in front of them.
Fraserburgh manager Mark Cowan: "The effort over the piece was incredible.
"I've played in that type of game where you're up against top, top opposition. We're playing one of the top sides in the country and it's going to be difficult. Okay, it was 3-0 but there weren't too many clear-cut chances.
"The Fraserburgh fans are great and they turn out in their numbers to support us week in, week out. It's a day for them and a day for the players."
Rangers manager Graeme Murty on Sky Sports: "The conditions played a part, but it was a clean sheet, a win, three goals and we're pleased to be through.
"There was definitely an improvement in the second half. I was a little bit frustrated [at half-time], we were opening spaces up then turning back. You can't keep on doing that. We looked a threat, but played 70% of the game from 50 yards out. We didn't penetrate.
"I have to be calm in how I look at it. The pitch was hard, the game won't be like that in the Premier League. The most important thing was that we got through and nobody is injured.
"It was three good goals [from Windass] but I spent 20 minutes telling him to run forward, so that he engaged the back line. He's good on one v ones and we wanted him to do that more often than drop deep.
"When he gets the ball, he can accelerate the game, so we want him to do that more. Three goals, he's quite happy in the changing room."
- 5ChristieBooked at 52minsSubstituted forCampbellat 68'minutes
- 8WestSubstituted forRaeat 69'minutes
- 9HarrisBooked at 76minsSubstituted forJohnstonat 83'minutesBooked at 85mins
- 23HoltBooked at 73mins
- 21CandeiasSubstituted forMurphyat 78'minutes
- 11WindassSubstituted forHerreraat 71'minutes
- 26CummingsSubstituted forDodooat 71'minutes
- Greg Aitken
- Shots on Target
Second Half ends, Fraserburgh 0, Rangers 3.
Corner, Rangers. Conceded by Jamie Beagrie.
Attempt blocked. David Bates (Rangers) right footed shot from the centre of the box is blocked.
Corner, Rangers. Conceded by Bryan Hay.
Foul by Eduardo Herrera (Rangers).
Paul Young (Fraserburgh) wins a free kick in the attacking half.
Graham Johnston (Fraserburgh) is shown the red card for violent conduct.
Joseph Dodoo (Rangers) wins a free kick on the right wing.
Foul by Graham Johnston (Fraserburgh).
Substitution, Fraserburgh. Graham Johnston replaces Gary Harris.
Attempt blocked. Niko Kranjcar (Rangers) right footed shot from outside the box is blocked.
Joseph Dodoo (Rangers) wins a free kick in the defensive half.
Foul by Dean Cowie (Fraserburgh).
Substitution, Rangers. Jamie Murphy replaces Daniel Candeias.
Gary Harris (Fraserburgh) is shown the yellow card for a bad foul.
Jason Holt (Rangers) wins a free kick on the right wing.
Foul by Gary Harris (Fraserburgh).
Attempt saved. Daniel Candeias (Rangers) right footed shot from the right side of the box is saved in the bottom right corner.
Jason Holt (Rangers) is shown the yellow card for a bad foul.
Foul by Jason Holt (Rangers).
Michael Rae (Fraserburgh) wins a free kick in the attacking half.
Attempt missed. Paul Young (Fraserburgh) right footed shot from outside the box is just a bit too high.
Corner, Fraserburgh. Conceded by Declan John.
Substitution, Rangers. Joseph Dodoo replaces Jason Cummings.
Substitution, Rangers. Eduardo Herrera replaces Josh Windass.
Substitution, Fraserburgh. Michael Rae replaces William West.
Substitution, Fraserburgh. Paul Campbell replaces Ryan Christie.
Goal! Fraserburgh 0, Rangers 3. Josh Windass (Rangers) right footed shot from the centre of the box to the bottom left corner. Assisted by Niko Kranjcar.
Foul by David Bates (Rangers).
William West (Fraserburgh) wins a free kick on the left wing.
Attempt missed. Jamie Beagrie (Fraserburgh) left footed shot from the left side of the box is close, but misses to the right.
Foul by Fábio Cardoso (Rangers).
William West (Fraserburgh) wins a free kick in the defensive half.
Attempt missed. Jason Cummings (Rangers) header from the centre of the box is too high.
Andy Halliday (Rangers) wins a free kick on the left wing.
Foul by Jamie Beagrie (Fraserburgh).
Goal! Fraserburgh 0, Rangers 2. Josh Windass (Rangers) right footed shot from the centre of the box to the top left corner. Assisted by Jason Cummings.
Ryan Christie (Fraserburgh) is shown the yellow card.
Attempt saved. William West (Fraserburgh) right footed shot from the centre of the box is saved in the top centre of the goal.