GREEN BAY, Wis. -- San Francisco smothered Aaron Rodgers and the Green Bay offense for most of the game, then made a late stand as the 49ers beat the Packers, 30-22, Sunday in the season opener.

The 49ers took a 23-7 lead into the fourth quarter, then twice let the Packers cut it to 8. But the defense held firm on a potential tying drive in the final minutes.

The 49ers got a boost just before halftime when David Akers kicked a 63-yard field goal that bounced off the crossbar and then kept going through the uprights to tie an NFL record.

"When you hit the goalpost at any part, it usually makes that horrific noise and then it usually bounces back," Akers said. "This time it got there. It was a sweet bounce. It was definitely a once-in-a-lifetime type of a deal."

Linebacker Ahmad Brooks said the win could be a sign that the 49ers are poised for another big playoff run. "Maybe we'll see them again in the NFC Championship," Brooks said of the Packers.

In the fourth, Randall Cobb gave the Packers a chance with a 75-yard punt return for a score, and a two-point conversion made it 23-15. But Rodgers threw an interception to linebacker NaVorro Bowman, and Frank Gore ran for a 23-yard touchdown.

Rodgers answered with a 10-yard TD pass to James Jones.

A sack by Clay Matthews helped force a punt, and the Packers took over at their 16 with 3:37 left and no timeouts.

Rodgers steadily marched the Packers down the field before Brooks sacked him. On fourth-and-10 near midfield, Rodgers threw deep down the right sideline toward Jordy Nelson, but the pass fell incomplete.

Alex Smith completed 20 of 26 for 211 yards and two touchdowns, and Gore rushed for 112 yards. Randy Moss scored a 14-yard touchdown in the second quarter, a familiar -- and painful -- sight for Packers fans.

Rodgers was 30-for-44 for 303 yards with two TDs and the interception.

The replacement officials called 18 penalties, some drawing animated complaints from both sidelines.

SUBSCRIBE

Unlimited Digital AccessOnly 25¢for 6 months

ACT NOWSALE ENDS SOON | CANCEL ANYTIME