PITTSBURGH -- The Buffalo Bills have always had a hard time winning in the Steel City.
Nothing changed Sunday.
Quarterback Ben Roethlisberger, shaking off a report he would ask for a trade after the season, passed for a touchdown and Le'Veon Bell ran for another as the Pittsburgh Steelers beat the Bills 23-10 before 60,406 at Heinz Field.
Pittsburgh (3-6) snapped a two-game losing streak, while Buffalo (3-7) lost for the fifth time in six games, despite welcoming back rookie quarterback EJ Manuel.
Manuel tossed a 2-yard touchdown strike to tight end Chris Gragg with three seconds left in the game.
But it was a case of too little, too late as the Bills suffered their 10th loss in 12 trips to Pittsburgh, where their last victory came in an AFC playoff game 20 years ago.
"That was a good performance in a lot of areas by a lot of people, but particularly after the initial drive there where we turned the ball over," Steelers coach Mike Tomlin said. "I thought we were able to settle down and find rhythm and establish the running game and convert some third downs.
"I thought the defense was game today."
Roethlisberger, Pittsburgh's two-time Super Bowl-winning quarterback, vehemently dismissed an NFL Network report that he would ask for a trade after the season.
"When it comes to wanting to go somewhere else, anything like that, that's completely unacceptable," he said. "I don't know where that came from. It's one of the most B.S. stories I've ever heard of.
"I've always said I want to be a Steeler for life. I love it here. I'm happy here. I don't want to go anywhere. No one in my family, in our camp, my agent, no one has ever said anything about that.
"Wherever this was made up from, it's totally false."
Roethlisberger was 18-for-30 passing for 204 yards. He tossed one touchdown and one interception and was sacked four times. Antonio Brown led the way with six catches for 104 yards.
What the Steelers said
"Coach (Dick) LeBeau always has us prepared. We have to go out and execute. That's what we're paid to do. If any criticism is to be heaped on anyone or anybody is to get the blame that we didn't play well, it should be the players, not the coaches." -- Safety Ryan Clark after the Steelers' defense limited the Bills to 227 yards offense and 10 points, just a week after New England rolled up 55 points and 610 yards
What the Bills said
"I thought he was good enough to play, but I wanted him to play better." -- Coach Doug Marrone on quarterback EJ Manuel, who finished 22 of 39 for 155 yards and one touchdown in his first start since missing the previous four games with a sprained right knee.
What we learned about the Steelers
1. Jerrico Cotchery has been the Steelers' go-to receiver recently, with four touchdown receptions in the past two games. His 5-yard touchdown reception in the second quarter Sunday gave the Steelers the lead for good at 10-3. He has a team-leading six touchdown catches this year, tying his career high set with the Jets in 2006.
2. The Steelers' injury-ravaged offensive line continues to struggle to protect quarterback Ben Roethlisberger. He has been sacked 35 in nine games, including four times by the Bills. He is on pace to snap the franchise's single-season record of 51, set by Cliff Stoudt in 1983.
What we learned about the Bills
1. Defensive end Mario Williams was missing in action. He entered the game tied for second in the NFL with 11 sacks, but didn't register a tackle, let alone a sack. It was the fourth time this season he failed to produce a sack in a game.
2. Punter Brian Moorman struggled against the Steelers, who cut him in training camp. Moorman averaged just 36.9 yards, including a 24.2 net, on nine punts at windy Heinz Field. Moorman, was recently re-signed by the Bills to replace Shawn Powell, who struggled through the first five games.