Lewis’s resilience proved infectious Sunday. The Bills blew an early 14-point lead, then rallied to kick the winning field goal with 33 seconds left and beat the Miami Dolphins, 23-21.

Mario Williams forced a fumble by sacking Ryan Tannehill with less than three minutes to go, setting up a 31-yard kick by Dan Carpenter, who was released in August after five seasons with the Dolphins and was booed throughout the game.

‘‘I just thought, ‘Kick it through those yellow things,’ ’’ Carpenter said.

Tannehill also threw two interceptions that made at least a 10-point difference. One ended a Miami scoring threat and rookie Nickell Robey returned the other interception 19 yards for a touchdown on the third play of the game to help the Bills build a 14-0 lead.

A month ago, the Dolphins (3-3) were basking in their best start since 2002. They haven’t won since, and they’ll take a three-game losing streak to Gillette Stadium to play the Patriots next Sunday.

‘‘We’re in a tough spot right now,’’ Tannehill said. ‘‘We have to face the adversity and grow from it. There are two ways we can go. We can tank it, or we can turn it around.’’

The injury-plagued Bills (3-4) ended a streak of six road losses, including two this year. They rallied after Brandon Gibson caught his second touchdown pass to put Miami ahead, 21-17, in the third quarter.

‘‘It meant a lot to get this win,’’ said Lewis, who grew up near Miami. “Wins are hard to come by in this league. It’s even sweeter to get it at home.’’

Lewis made his second straight start since being promoted from the practice squad to replace injured EJ Manuel. He was sacked four times and threw an interception, but helped the Bills convert 9 of 19 third downs. He finished 21 of 32 for 202 yards.

The 99th meeting between the AFC East rivals had one of the wilder endings in the series. With Miami nursing a 21-20 lead, Tannehill fumbled on Williams’s second sack of the game. Kyle Williams recovered at the Miami 34 and Carpenter booted the winner seven plays later.

Marcus Thigpen nearly broke the ensuing kickoff for a touchdown, but was tripped up by Carpenter after a 44-yard return to the Miami 46. Tannehill then threw four consecutive incompletions, his final desperate toss landing in the end zone among a cluster of players as time ran out.

Tannehill, who came into the game on pace to set an NFL record for most times sacked, increased his total by two to 26.