SAN DIEGO -- The San Diego Chargers seemed headed for another one of those slow starts that have defined coach Norv Turner's tenure.
The Chargers not only let Percy Harvin return the opening kickoff 103 yards for a touchdown, but kicker Nate Kaeding hurt his left knee on the play, forcing punter Mike Scifres to do his first place-kicking since college.
Well, guess again.
With the Vikings sputtering badly, Philip Rivers got the opening he'd been waiting for all afternoon. He threw a 19-yard touchdown pass to fullback Mike Tolbert with 5:01 to play to lift the Chargers to a 24-17 win on Sunday.
"When we face adversity, we don't curl up and call it quits," said Scifres, a nine-year veteran who signed a $19 million contract extension Wednesday.
"It's big," Rivers said. "We'd love not to have those interceptions, and we'd love to have that kickoff back and just let it be smooth and easy, but it's these kind of wins that you really grow. You grow more than a week."
On the winning play, Rivers rolled left and waited for Tolbert to get open inside the 5-yard line, then lobbed the pass.
"The protection was great, so I had time to step up, step up, and then to get out of the pocket, he was hanging with me," Rivers said. "He was looking at me like, 'Are you going to run it or throw it?' I would prefer to throw it.'
Rivers completed 33 of 48 passes for 335 yards and was intercepted twice.
Tolbert also scored on a 7-yard run in the third quarter and had a 1-yard TD catch in the first quarter.
"We were hyped even when were down 17-7," said Tolbert, who had stars shaved into his hair to commemorate the 10th anniversary of 9/11. "Nobody had their head down and said, 'Here we go again.' "
Minnesota led 17-7 at halftime, but gained only 26 yards on 17 plays in the second half. Their new quarterback, Donovan McNabb, struggled against San Diego's defense and was only 7 of 15 for 39 yards, with one touchdown and one interception.
"It's embarrassing to have the numbers that we had, whatever we had," McNabb said. "I can do that in one series and we'll get them corrected."
Adrian Peterson, who set the NFL single-game record with 296 yards against San Diego as a rookie in 2007, was held to 98 yards on 16 carries one day after signing a contract extension potentially worth $100 million.
"We really had some opportunities and felt we ran the ball pretty well in the first half," Peterson said. "We didn't get anything going in the second half. We have to get our passing game going better."
Chargers linebacker Takeo Spikes said he heard that Peterson said during the week that he was going to rush for 200 yards and the Vikings would win.
"We really felt disrespected," Spikes said. "
San Diego's rally included Tolbert bulling in from the 7 early in the third quarter and Scifres kicking his first NFL field goal, a 40-yarder with 10:05 left that tied the game at 17. Scifres also had three PATs.
The game had a crazy first few minutes.
Harvin returned the opening kickoff 103 yards for a touchdown, showing that the Chargers hadn't fully erased their special teams nightmare of 2010, which cost them a playoff berth. Kaeding hurt his left knee on the play and missed the rest of the game. He will undergo an MRI on Monday to determine the extent of the injury.
On the Vikings' first play from scrimmage, Chargers outside linebacker Shaun Phillips deflected McNabb's pass and intercepted it at the 6-yard line. Three plays later, Rivers found Tolbert wide open for a 1-yard scoring pass to tie it.
Ryan Longwell kicked a 33-yard field goal for the Vikings in the second quarter, and then Peterson finally got going with a 46-yard run. Chargers safety Eric Weddle, who signed a $40 million contract in the summer, had an arm around Peterson's right foot at about the 40, but the running back broke free and raced to the 3. McNabb then threw a TD pass to Michael Jenkins for a 17-7 lead.
Rivers overthrew a wide-open Vincent Jackson on what would have been a sure touchdown pass late in the second quarter that would have made it 17-14. Rivers stood with his hands on his head after the play.
Before the game, both teams and the crowd marked the 10-year anniversary of 9/11 by observing a moment of silence, then listening to a live version of "Taps" beamed live from Arlington National Cemetery. A giant American flag, unfurled and held by sailors and Marines, covered the field as Colbie Caillat sang the national anthem. Chargers tight end Antonio Gates wore red-white-and-blue cleats and gloves. ... Chargers DE Luis Castillo hurt a knee in the second half and didn't return.
Information from The Associated Press contributed to this report.