AUBURN, Ala. -- Auburn dodged an upset, riding a dramatic touchdown catch in the final minute followed by Peyton Barber's overtime touchdown run to a 27-20 win over Jacksonville State on Saturday.
Barber, making his first start at tailback, ran for 125 yards. The most important came on his 4-yard scoring run to cap No. 6 Auburn's first possession in overtime.
Troymaine Pope's 5-yard touchdown run with less than 6 minutes remaining gave the Gamecocks a 20-13 lead.
Auburn's Jeremy Johnson threw two interceptions, giving him five in two games. Auburn (2-0) also was hurt by a lost fumble by running back Roc Thomas, ending the Tigers' attempt to answer Pope's go-ahead touchdown.
After the Tigers moved to the Gamecocks 20, Thomas' fumble was recovered by defensive tackle Randy Robinson with about 3 minutes remaining.
A 17-yard punt by Jacksonville State's Hamish MacInnes gave Auburn the ball in great field position at the Gamecocks 31 with 2 minutes remaining.
Melvin Ray's leaping 10-yard catch in the right corner of the end zone with less than 1 minute remaining in regulation saved Auburn from a loss.
It was the first meeting of the Alabama schools located only 108 miles apart. Jacksonville State played even with Auburn, the highest-ranked opponent in the program's history.
Auburn struggled to stop the Gamecocks offense, led by quarterback Eli Jenkins' runs, throws and fakes.
Jenkins' 11-yard touchdown pass to Josh Barge gave Jacksonville State a 10-6 halftime lead.
Auburn appeared to have regained momentum with a strong start to the second half capped by Johnson's 51-yard touchdown pass to Roc Thomas. But Jacksonville State tied the game at 13-13 and linebacker Dawson Wells' interception of Johnson's pass set up the Gamecocks' go-ahead drive.
Jenkins completed 26 of 43 passes for 277 yards with one touchdown and one interception. He ran for 37 yards.
Johnson was 21 of 32 for 236 yards with two touchdowns and two interceptions. Coach Gus Malzahn insisted after the game Johnson is Auburn's starter.