Peterson rushed for 86 yards, falling far short of the 2,000-yard mark, yet helping the Vikings (9-6) keep their postseason chances alive with a 23-6 upset of the Texans on Sunday. Christian Ponder threw a touchdown pass, Toby Gerhartadded a score and Blair Walsh kicked three field goals as the Vikings won their third straight.
The win raises the stakes for the Vikings, who host Green Bay next Sunday in the regular-season finale.
"We obviously have a big one next week, and if we don't win that one, this one doesn't mean anything," Ponder said. "Our No. 1 goal is to make the playoffs."
The loss kept the Texans (12-3) from clinching home-field advantage throughout the AFC playoffs. They would still claim home-field advantage with a win next week at Indianapolis.
"Very disappointing because we had a chance to line up here and get something done today," coach Gary Kubiak said. "That doesn't mean we still can't get it done. That's the most important thing."
Peterson had his lowest rushing total since getting 79 yards on Oct. 14 in a loss at Washington, breaking a streak of eight 100-yard games. Peterson, who is from Palestine, Texas, had more than 100 family and friends at the game.
"We knew they were going to focus on the run, which is OK," Peterson said of the Texans. "It felt good to see other guys get involved and us continue to move the ball down and score some points."
He has 1,898 this season and needs 208 yards to break the NFL single-season rushing record held by Eric Dickerson. Minnesota coach Leslie Frazier said he took Peterson out late as a precaution because he has a sore abdomen.
"I'll get some rest and be ready to get a W and break that record," Peterson said.
The Vikings took a 10-3 lead when Walsh kicked a 56-yard field goal. The kick gave Walsh, a rookie, the NFL record with nine field goals of 50 yards or longer this season.
The Texans failed to score a touchdown for the first time since 2006.