Porter's game-clinching sack punctuated another strong defensive effort, and the surprising Dolphins helped their playoff chances Sunday by beating San Francisco 14-9.
The Dolphins had possession for less than 22 minutes but held the opposition without a touchdown for the third game in a row, their first such streak since 1973 and the NFL's first since 2000. San Francisco reached Miami's 21 before its final threat ended when Shaun Hill was sacked by Porter on fourth-and-10 with 1:02 left.
"We kept bending but never breaking," Porter said. "We made the plays when we had to."
The Dolphins (9-5) remained tied for the AFC East lead with the Patriots and Jets, who both won Sunday. Miami won for the seventh time in eight games -- quite a turnaround for a team that went 1-15 last season.
"We hung in there, as we have all season, and look at us now," defensive end Vonnie Holliday said. "It's a great time to be a Dolphin, no doubt about it."
The Dolphins can earn their first playoff berth since 2001 by sweeping their final two games. They've surged into contention with four victories by less than a touchdown since Nov. 1.
"We're finding ways to get wins," nose tackle Jason Ferguson said. "They're not cute, but all wins are beautiful."
The 49ers (5-9), trying to play spoilers, fell short in their bid to beat an AFC East team for the third week in a row.
"Obviously they wanted it more than we did," said Mike Singletary, 3-4 as San Francisco's coach. "We have to learn how to win."
The 49ers ran 79 plays to 42 for the Dolphins, but Miami tight ends scored the only touchdowns on first-half passes from Chad Pennington. He threw a 61-yarder to David Martin and a 19-yarder to rookie Joey Haynos.
Miami had the ball for less than 10 minutes in the first half, but led 14-3 at halftime, and needed only three plays on offense to take the lead for good. Pennington threw deep to Martin, who outmaneuvered Mark Roman to make the catch and sprinted for the end zone. It was the longest reception of Martin's career.
A 27-yard punt return by Davone Bess set up the Dolphins' second score on the completion to third-stringer Haynos, who made the first catch of his career.
"He was wide open," Martin said. "I was just praying he caught it."
From there the Dolphins nursed their lead. Miami's Dan Carpenter hit the crossbar on a 49-yard field goal attempt with 2:36 left, giving the 49ers the ball at their 39. They reached Miami's 21 before Hill spiked the ball to stop the clock, and he threw two more incompletions before NFL sack leader Porter got to him.
"Joey always comes through for us in the clutch situations," teammate Charlie Anderson said.
Porter was in typical form beginning with pregame warmups, when he ventured to the 49ers' side to taunt tight end Vernon Davis. Porter increased his season sack total to 17 1/2, and cornerback Nate Jones had his first two sacks of the season.
"We've got a little swagger to ourselves," Jones said. "We know if we don't let the other team in the end zone, we're probably going to win."
The Dolphins made only 11 first downs and converted just one third-down situation, but they had no turnovers and remain on pace to set an NFL record for fewest turnovers in a season.
Poor field position plagued the 49ers, who started their possessions at their 20, 20, 11, 4, 11, 13, 21, 34 and 39. Mistakes hurt them, too. They muffed a kickoff, made a fair catch of a punt inside the 5, dropped a potential interception and committed two false-start penalties on one play.
"Particularly in the first half, we didn't get out of our own way," Singletary said.
The 49ers also drove inside the Miami 25 four times without scoring a TD.
"We didn't execute well enough in the red zone," Hill said. "Anytime you're kicking field goals instead of touchdowns, that really hinders you."
49ers T Adam Snyder left the game in the first quarter due to a sprained left ankle. ... Porter went to the X-ray room after the game. A Dolphins official said the team had no information about any injury. ... Umpire Scott Dawson left the game in the second quarter. His nose was bloodied when he was blindsided by two Miami defenders. ... Pennington connected on his first six passes, extending his two-game streak to 17 completions in a row to break Dan Marino's team record of 15 set in 1992.
Several Buffalo Bills players accused star receiver Odell Beckham Jr. of throwing punches after plays late in the New York Giants' 24-10 win in Buffalo.
Colts quarterback Andrew Luck threw and took the majority of the snaps in practice Tuesday, giving the indication that he is on track to play in Thursday's game against the Texans.
New York Attorney General Eric Schneiderman has launched an inquiry into DraftKings and FanDuel to look into possible advantages daily fantasy employees might have gained by exploiting data.
The proposed riverfront NFL stadium in St. Louis has a naming rights deal worth $158 million, as National Car Rental has reached a 20-year agreement with the St. Louis Regional Sports Authority.
For the first time since signing with Dallas in March, defensive end Greg Hardy spoke at length Tuesday, but not about the domestic violence incident that led to his suspension.
Lions coach Jim Caldwell said Tuesday he is instructing his players not to talk about the batted ball controversy that happened at the end of Monday night's loss to Seattle.