Josh Brown's winning last-second field goal couldn't erase the bad taste from the St. Louis Rams' poor first half.

Coach Steve Spagnuolo didn't mince words after the starters got dominated on both sides of the ball, needing the backups to rally for a hollow 17-16 victory over the Tennessee Titans on Saturday night.

"I do think we've got a long way to go based on that first half," Spagnuolo said. "I'm not real happy with how we ran the ball, I'm not real happy with how we stopped the run."

Players weren't happy, either.

"Did we come away with a win? Yes, we did," center Jason Brown said. "But did we move the ball like we wanted to? No, we did not. There's going to be a lot of teaching points and a lot of criticism and constructive things we can learn from this game."

After getting burned for an 83-yard touchdown pass on the first play, the Titans' defense stood fast. The offense thrived without holdout Chris Johnson while taking a 16-7 halftime lead.

"We settled down, adjusted, and pretty much shut them down the rest of the half," coach Mike Munchak said. "Pretty much the rest of the game really, until the end there.

"I thought the first group did a great job."

Steven Jackson was limited to 10 yards on six carries in his preseason debut and Sam Bradford had no other big plays in the first half, plus got banged around a bit after tackle Rodger Saffold tweaked his back in the second quarter.

"Nothing we saw was anything new," Bradford said. "We had seen all those blitzes in practice, we could have picked those up. We know what we need to work on."

The Rams (2-0) scored 33 points in the preseason opener against the Colts but, after getting Tennessee (1-1) to bite on play action on Bradford's 83-yarder to a wide-open Brandon Gibson for a quick 7-0 lead, new offensive coordinator Josh McDaniels had no follow-up with the first-stringers.

Brown's 42-yard field goal capped a closing 12-play 67-yard drive behind third string quarterback Thaddeus Lewis. Brown was successful twice, first connecting after the Titans called timeout just before the snap.

St. Louis opened with three tight ends and Jackson the lone back on a play that easily topped the Rams' longest play last season, a 49-yard reception by Jackson, the lone suspense coming when Gibson stumbled at the 35. The rest of the half, St. Louis totaled just 70 yards on 27 plays.

Rookie Jamie Harper, third on the Tennessee depth chart behind Johnson and Javon Ringer (hamstring) had 83 yards on 11 carries in the half. The highlight was a 46-yarder on a cutback run, and he scored for the second straight week.

The Titans totaled 198 yards rushing with a 5.7-yard average.

"Regardless if it's Chris back there or Javon Ringer or Jamie Harper, whoever's back there, we're going to block our tails off and establish the running game," center Eugene Amano said. "That's our identity."

Tennessee starter Matt Hasselbeck was sharp, going 7 for 9 for 74 yards. Hasselbeck was shaken up on his final play when Brady Poppinga rolled into his legs after a pass, but after walking off didn't need treatment on the sideline.

"A guy hit me on top of my head and I bit my tongue really good," Hasselbeck said. "I got the wind knocked out of me. I had a lot of blood in my mouth.

"I could have gone back in, but I had hit my allotted plays."

Jackson missed most of two practices with hip soreness this week, but said it was just a precaution. He had trouble finding holes behind a line that had seldom-used Hank Fraley at guard in place of guard Jacob Bell. Donnie Jones punted eight times, four in each half.

"I'm not looking for yardage in the preseason. What I'm looking for is run reads and how my chemistry is with the offensive line. One hundred yards or 1 yard, it's irregardless.

"The job of the preseason is to get back into the flow of the game."

The Rams' Donnie Avery (knee) played for the first time since last preseason and caught a 19-yard touchdown pass from A.J. Feeley in the third quarter that cut the gap to 16-14.

Jake Locker threw a 29-yard completion to Jared Cook to the 5 on his first snap to set up Rob Bironas' third field goal of the half. Two of them were chip shots after the Titans stalled at the 7 and 5.

"Field goals will kill you, and we kicked a lot of field goals," Munchak said.

Alterraun Verner's interception on Bradford's throw in traffic intended for Mike Sims-Walker set up Harper's touchdown run that put the Titans up 10-7 in the first quarter. Bradford was hit hard on consecutive plays in the second quarter, getting blind-sided by blitzing cornerback Cortland Finnegan and then going down after William Hayes grabbed him by the ankles.

Titans defensive end Jason Jones was carted off the field at the start of the second quarter with a sprained left knee sustained on the 83-yard touchdown. Jones was back on the sideline in the second half wearing a brace and is expected back in time for the opener Sept. 11 at Jacksonville.

Rams middle linebacker James Laurinaitis made his preseason debut and tackled Harper for a 1-yard gain on the Titans' first play. Laurinaitis, who missed the opener with a pectoral injury, also had a sack.

NOTES: The Titans held out WR Kenny Britt (sore right hamstring) ... Rookie DT Karl Klug, a fifth-round pick, made his second start for Tennessee. Sen'Derrick Marks returned to practice this week from shoulder surgery in March and isn't expected to play until the fourth preseason game. ... The Rams had seven penalties for 64 yards, a step back from the preseason opener when they were whistled only twice for 14 yards. ... Tennessee hasn't won on the road in the preseason since Aug. 28, 2008 at Green Bay.