Marc Richards headed his 16th goal of the season to see off 10-man Bristol Rovers in League Two.
Tom Parkes sent a shot narrowly wide for Rovers early on, but the hosts went ahead when Richards nodded in Sean Rigg's left-wing cross.
Parkes then received a straight red card before the break after a two-footed lunge on Chris Shuker, who was lucky to remain unscathed.
Adam Yates, Louis Dodds and Shuker went close as Vale went on to dominate.
VIEWS FROM THE DRESSING ROOM
Port Vale manager Micky Adams told BBC Radio Stoke:
"We deserved the victory. I was really pleased with how it went and we're pleased to get the three points.
"We kept the same team that started against Shrewsbury in midweek because I thought we played really well against a team challenging for promotion."
"These games that are dead rubbers are difficult to get yourselves up for, but we've set ourselves a few targets for the last few games."
Bristol Rovers manager Mark McGhee told BBC Radio Bristol:
"We didn't play well - we didn't reach any of the heights we've reached in recent games.
"Our possession was poor, our decision making was poor and we looked short on energy.
"Although Matt Harrold battled his corner really well, Eliot (richards) never quite got into the game like he did last week.
"Muzzy (Carayol) was very disappointing and he's so vital to our attack that when he plays as poorly as he did, you're not going to be half as potent."
Port Vale 01 Martin 02 Yates 05 McCombe 26 Davis Booked 04 Griffith (Morsy - 72' ) 07 Loft 17 Rigg (Taylor - 81' ) 20 Shuker 08 Dodds (Williamson - 74' ) 09 Richards 11 Pope Substitutes 03 Taylor 14 Marshall 18 Morsy 21 James 19 Williamson Bristol Rovers 01 Bevan 03 Sawyer 04 Woodards 05 Bolger Booked 37 Parks Dismissed 08 Gill 11 Carayol (Smith - 60' ) 17 Paterson (Brown - 83' Booked ) 34 Dorman 09 Harrold 18 Richard (Zebroski - 60' ) Substitutes 02 Smith 14 Brown 33 Downes 21 Brown 26 Zebroski