PHILADELPHIA (WPVI) -- Cameron Rupp hadn't taken a shot this hard since his days playing high school football in Texas.
Tyler Goeddel threw out Eugenio Suarez with Rupp holding onto the ball following a violent collision to end the game and the Philadelphia Phillies held on to beat the Cincinnati Reds 4-3 on Saturday night.
"I sacrificed," said Rupp, who wasn't aware of an abrasion on top of his forehead. "I don't know how I caught it."
Rupp played middle linebacker and fullback at Prestonwood Christian Academy in Plano, Texas.
"I was usually the one hitting people," Rupp said. "It was fun. Definitely an adrenaline rush."
Aaron Nola (3-2) tied a career high with nine strikeouts in seven stingy innings, Odubel Herrera hit a solo homer and David Hernandez pitched out of a jam for his first save since July 12, 2013, for Arizona against Milwaukee.
With setup man Hector Neris and closer Jeanmar Gomez unavailable, Hernandez entered to protect a two-run lead.
Jay Bruce walked to start the ninth, Suarez hit a single and Adam Duvall followed with a double to left to cut it to 4-3. After Tucker Barnhart grounded out to first base, pinch-hitter Jordan Pacheco hit a fly ball to left.
Goeddel made a perfect, no-hop throw to Rupp, who held on despite Suarez crashing into him. Rupp stayed down briefly, but was up before the umpires completed a review to determine he didn't block the plate illegally.
"I put everything into the throw and Cam made a great play," Goeddel said.
Manager Pete Mackanin called it a "perfect throw."
"What a way to end the game," Mackanin said. "Fantastic."
Nola gave up two runs - one earned - and five hits. He struck out Tucker Barnhart and pinch-hitter Ramon Cabrera to leave runners on second and third in the seventh.
The upstart Phillies have won three in a row, six of seven and are 22-11 since opening the season 0-4. They're 14-3 in one-run games.
Cincinnati's Tim Adleman (1-1) allowed three runs and eight hits in five innings in his third career start.
Herrera gave the Phillies a two-run cushion in the seventh when he lined a shot that bounced off a fan's hands in the right-field stands and back on the field. A video review upheld the call and an exuberant Herrera screamed in celebration and high-fived teammates in the dugout.
The Phillies took a 3-1 lead in the fifth on consecutive RBI singles by Herrera and Cesar Hernandez.
Duvall's RBI double down the left-field line cut it to 3-2. But Nola escaped more trouble. The 2014 first-round pick mixed his pitches nicely and got five of his strikeouts on off-speed stuff.
"It's frustrating," Barnhart said. "We had opportunities."
Ryan Howard followed Maikel Franco's double with an RBI double off the wall in right-center to tie it at 1 in the fourth.
The Reds loaded the bases on two singles and a walk to start the game, but only scored one run. Zack Cozart raced home on Brandon Phillips' sacrifice fly, a foul pop to first baseman Howard.
The Phillies moved seven games over .500 for the first time since finishing the 2011 season with a franchise-record 102 wins. The last-place Reds dropped to 14-22 with their fifth loss in six games.
Nola is 3-0 with a 1.32 ERA in his last five starts.
"He has a great way about him," Mackanin said. "He knows how to make adjustments. He's a lot of fun to watch."
Howard was 3 for 26 before his RBI double. Herrera was 1 for 16 vs. the Reds before his go-ahead single.
Reds: RHP Anthony DeSclafani threw 25 pitches in a bullpen session. DeSclafani hasn't pitched this season because of a strained left oblique.
Phillies: INF/OF Cody Asche was 2 for 4 with a two-run homer in his second rehab game at Single-A Clearwater. Asche, who has played left field in both games, has been sidelined by a right oblique strain since spring training.
RHP Dan Straily (1-3, 3.47 ERA) starts for the Reds while LHP Adam Morgan (1-0, 3.94) goes for the Phillies on Sunday. Both pitchers are making their first appearance against the other team.