NASHVILLE, Tenn. -- Not even the return of Jake Locker could help the Tennessee Titans out of their October skid.
Colin Kaepernick was an efficient 13-for-21 in the air for 199 yards, and he rushed for a touchdown Sunday as the San Francisco 49ers won their fourth straight game with a 31-17 victory at LP Field.
Kaepernick ran for 69 yards on 11 carries, including a 20-yard scoring rush off a read option play with 6:42 left in the first half that gave San Francisco (5-2) a 10-0 advantage.
Frank Gore capped the next two drives with 1-yard touchdown runs, the second one finishing a 12-play, 79-yard drive that ate the first 7 minutes and 40 seconds of the third quarter.
At that point, the 49ers owned a 24-0 lead and some members in the sellout crowd of 69,143 were already heading for the exits, figuring the outcome was already decided.
They were right, although Tennessee (3-4) at least made it respectable. Rob Bironas converted a 31-yard field goal with 12:23 left in the game. The Titans then added a touchdown with 7:07 left when Chris Johnson took Locker's screen pass 66 yards.
Any thoughts of a major rally ended when Tennessee's Darius Reynaud muffed a punt at the 11. Kassim Osgood recovered the bouncing ball in the end zone with 6:16 left to make it 31-10.
Locker then finished the scoring with a 26-yard touchdown pass to Delanie Walker with 3:17 remaining.
After missing the last two games when he injured his knee and hip during a Sept. 30 win over the New York Jets, Locker returned to practice this week and did enough to convince the coaches he should regain the starting job over veteran backup Ryan Fitzpatrick.
But Locker couldn't provide enough of a spark for an offense that managed just two touchdowns in his absence. He completed 25 of 41 passes for 326 yards and threw his first interception of the year, setting up Gore's first score.
San Francisco stayed a game behind Seattle in the NFC West, while the Titans dropped 1 1/2 games behind Indianapolis in the AFC South, pending the result of the Colts' game against Denver in the Sunday night game.
NOTES: Bironas played in his 135th straight game, tying him with Elvin Bethea and Keith Bulluck for fourth place in franchise history. Only OL Bruce Matthews (232), LB Robert Brazile (147) and P Craig Hentrich (146) have played more. ... The game also marked a reunion of sorts for Walker, who played his first seven NFL seasons with San Francisco before signing with Tennessee as an unrestricted free agent in the offseason. ... The 49ers left from Nashville after the game for London, where they will play Jacksonville next Sunday.