Port Vale closed in on the play-off places as goals by Louis Dodds and Gavin Tomlin gave them the points against 10-man Rotherham.

The hosts took the lead when Tom Pope headed down for Dodds to hammer a shot past Millers goalkeeper Adam Collin.

Vale keeper Sam Johnson saved Kieran Agard's penalty after James Tavernier had been tripped by Richard Duffy.

Rotherham defender Claude Davis saw red for kicking out at Pope before Tomlin sealed victory from 12 yards.

The one downside for Vale was a late booking for Anthony Griffith, which was his fifth of the campaign, earning him an automatic suspension.

VIEW FROM THE DRESSING ROOM

Port Vale boss Micky Adams told BBC Radio Stoke:

"I couldn't have wished for any better. It was a terrific performance. Our energy levels were different class.

"They have got some decent players and I thought we could stifle them with maybe having three in midfield.

"You'd have to say we were slightly fortunate to keep a clean sheet.

"There were no complaints about the penalty. There was some poor defending leading up to it. But Sam Johnson pulled off a great save."

Lineup, Bookings (7) & Substitutions (6)

Port Vale

  • 12 Johnson
  • 02 Yates
  • 05 Dickinson
  • 21 Griffith Booked (Birchall - 73' )
  • 24 Duffy Booked
  • 06 Chilvers
  • 18 Lines
  • 07 Loft
  • 11 Pope
  • 08 Dodds (Williamson - 84' )
  • 10 Tomlin (Shuker - 78' Booked )

Substitutes

  • 15 Shuker
  • 19 Williamson
  • 22 Lloyd
  • 26 Birchall
  • 29 Hughes
  • 34 Boot
  • 39 Hugill

Rotherham United

  • 21 Collin
  • 27 Tavernier
  • 03 Skarz
  • 10 O'Connor Booked (Brindley - 61' )
  • 05 Davis Dismissed
  • 20 Morgan
  • 22 Agard
  • 04 Arnason Booked
  • 09 Revell (Tubbs - 84' )
  • 28 Vuckic (Tidser - 59' )
  • 18 Pringle Booked

Substitutes

  • 01 Shearer
  • 02 Brindley
  • 06 Mills
  • 07 Worrall
  • 08 Frecklington
  • 16 Tubbs
  • 23 Tidser
Ref: Robert Lewis
Att: 6,738

Match Stats

Shots

13 9

On target

6 4

Corners

8 3

Fouls

14 9

Live Text Commentary

Full time

Full Time Match ends, Port Vale 2, Rotherham United 0.

90:00 +5:18 Full time

Full Time Second Half ends, Port Vale 2, Rotherham United 0.

90:00 +5:06

Attempt saved. Kieran Agard (Rotherham United) right footed shot from the centre of the box is saved in the top centre of the goal.

90:00 +1:22 Booking

Booking Chris Shuker (Port Vale) is shown the yellow card.

90:00 +1:15

Foul by Chris Shuker (Port Vale).

90:00 +1:15

Ben Pringle (Rotherham United) wins a free kick on the left wing.

90:00 +0:52

Attempt missed. Ben Williamson (Port Vale) right footed shot from the right side of the box is close, but misses to the right.

89:49

Attempt missed. James Tavernier (Rotherham United) right footed shot from outside the box is too high.

88:43

Attempt saved. Matt Tubbs (Rotherham United) right footed shot from the right side of the box is saved in the centre of the goal.

86:36

Corner, Port Vale. Conceded by Kári Arnason.

85:46

Tom Pope (Port Vale) wins a free kick on the left wing.

85:46

Foul by Kári Arnason (Rotherham United).

83:46 Substitution

Substitution Substitution, Port Vale. Ben Williamson replaces Louis Dodds.

83:34 Substitution

Substitution Substitution, Rotherham United. Matt Tubbs replaces Alex Revell.

81:30 Booking

Booking Ben Pringle (Rotherham United) is shown the yellow card.

81:23

Corner, Port Vale. Conceded by Ben Pringle.

80:09

Attempt missed. Tom Pope (Port Vale) header from the centre of the box is just a bit too high.

77:57 Substitution

Substitution Substitution, Port Vale. Chris Shuker replaces Gavin Tomlin.

77:42

Corner, Port Vale. Conceded by Craig Morgan.

75:48

Foul by Chris Birchall (Port Vale).

75:48

Kieran Agard (Rotherham United) wins a free kick in the attacking half.

74:33

Tom Pope (Port Vale) wins a free kick in the attacking half.

74:33

Foul by Kári Arnason (Rotherham United).

72:16 Substitution

Substitution Substitution, Port Vale. Chris Birchall replaces Anthony Griffith.

67:20 Goal scored

Goal! Goal! Port Vale 2, Rotherham United 0. Gavin Tomlin (Port Vale) right footed shot from the centre of the box to the centre of the goal. Assisted by Chris Lines.

66:02 Booking

Booking Kári Arnason (Rotherham United) is shown the yellow card.

65:55

Hand ball by Kári Arnason (Rotherham United).

62:37

Foul by Liam Chilvers (Port Vale).

62:37

Kieran Agard (Rotherham United) wins a free kick in the defensive half.

60:40 Substitution

Substitution Substitution, Rotherham United. Richard Brindley replaces Michael O'Connor.

60:06

Attempt missed. Louis Dodds (Port Vale) left footed shot from the left side of the box is close, but misses to the left.

58:02 Substitution

Substitution Substitution, Rotherham United. Michael Tidser replaces Haris Vuckic.

57:47

Attempt missed. Doug Loft (Port Vale) header from the centre of the box misses to the right.

54:57

Corner, Port Vale. Conceded by James Tavernier.

54:48

Attempt blocked. Gavin Tomlin (Port Vale) right footed shot from the right side of the box is blocked.

53:21 Dismissal

Dismissal Claude Davis (Rotherham United) is shown the red card for dangerous play.

53:00

Tom Pope (Port Vale) wins a free kick in the defensive half.

52:53

Dangerous play by Claude Davis (Rotherham United).

51:29

Corner, Rotherham United. Conceded by Carl Dickinson.

51:20

Attempt blocked. Kieran Agard (Rotherham United) right footed shot from outside the box is blocked.

49:39

Foul by Chris Lines (Port Vale).

49:39

Michael O'Connor (Rotherham United) wins a free kick in the defensive half.

47:10

Attempt saved. Doug Loft (Port Vale) right footed shot from outside the box is saved in the top centre of the goal.

45:54

Corner, Port Vale. Conceded by Claude Davis.

45:00

Second Half begins Port Vale 1, Rotherham United 0.

45:00 +3:51 Half time

Half Time First Half ends, Port Vale 1, Rotherham United 0.

45:00 +3:31

Michael O'Connor (Rotherham United) hits the left post with a right footed shot from outside the box from a direct free kick.

45:00 +1:53 Booking

Booking Anthony Griffith (Port Vale) is shown the yellow card.

45:00 +1:44

Foul by Anthony Griffith (Port Vale).

45:00 +1:44

Michael O'Connor (Rotherham United) wins a free kick in the defensive half.

42:13

Foul by Chris Lines (Port Vale).

42:13

James Tavernier (Rotherham United) wins a free kick on the left wing.

40:48

Attempt saved. Gavin Tomlin (Port Vale) right footed shot from the left side of the box is saved in the bottom right corner.

40:35

Corner, Port Vale. Conceded by Kári Arnason.

40:16

Attempt blocked. Doug Loft (Port Vale) right footed shot from outside the box is blocked.

39:45

Tom Pope (Port Vale) wins a free kick in the attacking half.

39:45

Foul by Claude Davis (Rotherham United).

39:06

Attempt missed. Kári Arnason (Rotherham United) right footed shot from more than 35 yards is close, but misses to the left.

38:08

Attempt missed. Doug Loft (Port Vale) right footed shot from the right side of the box is close, but misses to the left.

35:02

Foul by Anthony Griffith (Port Vale).

35:02

Kári Arnason (Rotherham United) wins a free kick in the defensive half.

31:51 Booking

Booking Michael O'Connor (Rotherham United) is shown the yellow card.

31:43

(Port Vale) wins a free kick in the attacking half.

31:43

Foul by Michael O'Connor (Rotherham United).

30:47

Carl Dickinson (Port Vale) wins a free kick on the right wing.

30:47

Foul by Kieran Agard (Rotherham United).

28:34

Corner, Port Vale. Conceded by Claude Davis.

26:51

Foul by Tom Pope (Port Vale).

26:51

Claude Davis (Rotherham United) wins a free kick in the attacking half.

25:49

Corner, Rotherham United. Conceded by Carl Dickinson.

25:06

Attempt saved. Ben Pringle (Rotherham United) right footed shot from outside the box is saved in the top left corner.

24:33 Booking

Booking Richard Duffy (Port Vale) is shown the yellow card.

24:20

Foul by Richard Duffy (Port Vale).

24:20

Haris Vuckic (Rotherham United) wins a free kick in the defensive half.

21:23

Foul by Anthony Griffith (Port Vale).

21:23

Michael O'Connor (Rotherham United) wins a free kick in the defensive half.

18:22

Corner, Rotherham United. Conceded by Carl Dickinson.

17:35

Foul by Chris Lines (Port Vale).

17:35

Kári Arnason (Rotherham United) wins a free kick in the attacking half.

16:49

Penalty saved! Kieran Agard (Rotherham United) fails to capitalise on this great opportunity, right footed shot saved in the bottom right corner.

16:27

Penalty conceded by Richard Duffy (Port Vale) after a foul in the penalty area.

16:27

Penalty Rotherham United. James Tavernier draws a foul in the penalty area.

14:18

Anthony Griffith (Port Vale) wins a free kick in the defensive half.

14:18

Foul by Alex Revell (Rotherham United).

12:58

Corner, Port Vale. Conceded by Joe Skarz.

9:45

Foul by Anthony Griffith (Port Vale).

9:45

Michael O'Connor (Rotherham United) wins a free kick in the defensive half.

7:17 Goal scored

Goal! Goal! Port Vale 1, Rotherham United 0. Louis Dodds (Port Vale) left footed shot from the centre of the box to the bottom left corner.

6:37

Attempt saved. Tom Pope (Port Vale) right footed shot from the centre of the box is saved in the centre of the goal.

4:46

Attempt missed. Michael O'Connor (Rotherham United) right footed shot from the right side of the box misses to the right.

4:05

Foul by Liam Chilvers (Port Vale).

4:05

Alex Revell (Rotherham United) wins a free kick in the defensive half.

3:15

Attempt saved. Tom Pope (Port Vale) header from the centre of the box is saved in the top centre of the goal.

2:42

Foul by Joe Skarz (Rotherham United).

2:42

Louis Dodds (Port Vale) wins a free kick in the defensive half.

0:00

First Half begins.

0:00

Lineups are announced and players are warming up.

Live data and text provided by our data suppliers