The result leaves North End eight points clear in the race for promotion, with Rovers slipping to fourth having gone six games without a win.
Millwall took advantage of Rovers' defeat to leapfrog above them into third place, Neil Harris scoring a hat-trick in their 3-1 win at Brentford. Lorenzo Pinamonte had given Brentford a surprise lead by scoring in the fourth minute.
Gillingham dented Wigan's hopes of securing an automatic promotion place with a 2-1 win at Priestfield, goals in each half from Iffy Onuora and Junior Lewis doing the damage.
Gillingham now occupy the fourth play-off spot, with Stoke out of action due to their Wembley date against Bristol City in the Auto Windshield Final.
Burnley kept up their hopes of automatic promotion with a 2-1 win at Oxford, Paul Weller scoring the winner in the 90th minute. Matt Murphy had given Oxford a 13th minute lead only for Steve Davis to equalise five minutes from full-time.
Notts County saw their play-offs hopes fade at home to Reading, second-half goals by Nicky Forster and Ricky Newman giving the visitors a 2-1 win. Duane Darby had brought County level with a 58th minute strike.
Kevin Russell scored the only game of the game as Wrexham defeated Bournemouth, while two goals from Steve Brown helped Wycombe to a 3-0 home win over Colchester.
Baichung Bhutia became the first Indian to score a goal in the English league by giving Bury a first-half lead against bottom-placed Chesterfield at Gigg Lane. However the visitors spoiled the party thanks to an Anthony Carss equaliser 15 minutes from time.
Cambridge did their survival hopes no harm with a thumping 4-0 win against relegation rivals Cardiff at Ninian Park, John Taylor scoring a hat-trick. Jonathan Hunt notched United's fourth in the final minute.
Scunthorpe also improved their hopes of beating the drop. First-half goals by Gary Bull and Gary Sheldon, both within the space of a minute, gave them a vital win at Blackpool. Steve McMahon's side now lie second to bottom, four points adrift of Oxford.
| Pos. | Team | Pts | Pl. | W | D | L | F | A | Diff |
| 1 | Preston | 86 | 42 | 25 | 11 | 6 | 68 | 33 | +35 |
| 2 | Wigan | 78 | 42 | 21 | 15 | 6 | 68 | 34 | +34 |
| 3 | Millwall | 78 | 42 | 22 | 12 | 8 | 68 | 41 | +27 |
| 4 | Bristol R | 76 | 42 | 22 | 10 | 10 | 64 | 40 | +24 |
| 5 | Burnley | 76 | 41 | 21 | 13 | 7 | 58 | 38 | +20 |
| 6 | Gillingham | 72 | 40 | 21 | 9 | 10 | 66 | 44 | +22 |
| 7 | Stoke | 70 | 41 | 19 | 13 | 9 | 60 | 40 | +20 |
| 8 | Notts Co | 64 | 42 | 18 | 10 | 14 | 58 | 48 | +10 |
| 9 | Bristol C | 57 | 41 | 13 | 18 | 10 | 51 | 47 | +4 |
| 10 | Luton | 56 | 41 | 16 | 8 | 17 | 57 | 59 | -2 |
| 11 | Wycombe | 55 | 42 | 14 | 13 | 15 | 51 | 49 | +2 |
| 12 | Oldham | 55 | 41 | 15 | 10 | 16 | 45 | 49 | -4 |
| 13 | Reading | 55 | 42 | 14 | 13 | 15 | 53 | 60 | -7 |
| 14 | Bournemouth | 54 | 42 | 16 | 6 | 20 | 54 | 56 | -2 |
| 15 | Brentford | 50 | 42 | 13 | 11 | 18 | 44 | 55 | -11 |
| 16 | Wrexham | 50 | 42 | 13 | 11 | 18 | 46 | 61 | -15 |
| 17 | Bury | 49 | 41 | 11 | 16 | 14 | 53 | 56 | -3 |
| 18 | Colchester | 48 | 42 | 13 | 9 | 20 | 53 | 76 | -23 |
| 19 | Cambridge | 45 | 42 | 11 | 12 | 19 | 60 | 58 | +2 |
| 20 | Oxford | 40 | 42 | 11 | 7 | 24 | 38 | 69 | -31 |
| 21 | Scunthorpe | 39 | 42 | 9 | 12 | 21 | 39 | 67 | -28 |
| 22 | Cardiff | 38 | 41 | 7 | 17 | 17 | 40 | 58 | -18 |
| 23 | Blackpool | 36 | 42 | 7 | 15 | 20 | 42 | 70 | -28 |
| 24 | Chesterfield | 28 | 41 | 5 | 13 | 23 | 46 | 51 | -5 |