Gary Waddock celebrated his first game as QPR manager with a deserved win over 10-man Millwall thanks to Marc Nygaard's goal.
Nygaard scored at the second attempt in the 56th minute to delight caretaker-boss Waddock, who took over after former boss Ian Holloway had been put on gardening leave, and push Millwall closer to relegation.
The ineffective visitors' frustrating afternoon was summed up when Alan Dunne was sent off 14 minutes from time after two unnecessary bookings.
The second half was marked by a short outbreak of trouble in the stands, but stewards and police intervened quickly.
The game had begun in torpid fashion, but came to life after 22 minutes when Rangers wasted a marvellous chance to go ahead.
The recalled Paul Furlong shot wide from a perfect position inside the box after Lee Cook had run 40 yards before setting up the veteran striker with an astute through-ball.
In the 32nd minute, Cook's low cross from the right was punched unconvincingly by Lions goalkeeper Andy Marshall after the ball had looped into the air off defender Tony Craig.
Marcus Bignot drove the loose ball across goal, but no Rangers player was there to provide the finish.
Rangers were settling into their stride and, six minutes before the break, produced a fluent move involving Cook, Steve Lomas and Gareth Ainsworth which ended with Cook shooting over the bar after Ainsworth's short cross had been deflected into his path.
Rangers had to wait until the 56th minute before scoring the goal their neater football deserved.
After a fine move involving Mauro Milanese, Nygaard and Furlong, Ainsworth sent over a cross which Nygaard headed against Marshall before volleying in the rebound from five yards.
Rangers should have clinched victory in the 74th minute when Bignot played a one-two with Nygaard but fired wide from an unmarked position eight yards out.
And they were almost made to pay a minute later, when substitute Ben May headed Barry Cogan's corner goalwards but Paul Jones - making his debut - was well-positioned and made a simple catch.
The visitors' misery was complete when Dunne was red-card after being shown a second yellow card for a foul on Lomas.
QPR Jones, Bignot, Shittu, Evatt, Milanese, Ainsworth,Bircham (Langley 88), Lomas, Cook, Furlong, Nygaard (Baidoo 78).
Subs Not Used: Thomas, Rose, Donnelly.
Booked: Milanese, Ainsworth.
Goals: Nygaard 56.
Millwall Marshall, Paul Robinson, Lawrence, Whitbread, Craig,Dunne, Elliott, Livermore, Cogan (Dyer 81), Powel (May 50),Braniff (Williams 60).
Subs Not Used: Doyle, Morris.
Sent Off: Dunne (76).
Booked: Dunne, Elliott, Paul Robinson.
Att: 12,355
Ref: A Wiley (Staffordshire).