Houston, TX – Roy Halladay tossed a six-hit shutout and the 0 in the finale of a three-game series at Minute Maid Park.
Halladay (18-5) struck out seven and walked one, helping Philadelphia earn a spot in the postseason for the fifth consecutive year. He is the first Phillies hurler to win at least 18 games in back-to-back seasons since Steve Carlton in 1979-1980.
It was Halladay's first shutout this season and 20th of his career.
"He had good command, especially against the young hitters," Phillies manager Charlie Manuel said. "He had a lot of off-speed stuff. He didn't throw them a lot of fastballs they could get to."
It was enough for the Phillies, who bounced back from dropping the first two games of the series and snapped a three-game losing streak. Their magic number to clinch the NL East for a fifth straight year is four.
Bud Norris (6-10) suffered the loss despite pitching seven solid innings. He allowed one run while scattering four hits, walking one and striking out three.
"Bud was absolutely outstanding," Astros manager Brad Mills said. "He made some really good pitches especially after the game got going."
The Astros went 1-for-8 with runners in scoring position and have dropped eight of 12.
Halladay pitched out of a bases-loaded jam with no outs in the second. Jose Altuve grounded into a force out at home on a ground ball to Polanco, and Humberto Quintero followed by grounding into an inning-ending double play to Polanco.
The Astros stranded Jordan Schafer at second base in the third, Altuve at second in the fifth and Jimmy Paredes at third in the seventh.
Halladay made his 350th career start. He made his 30th start this year and has eclipsed that plateau in each of the last six seasons. He has 27 strikeouts and one walk in his career against Houston...Philadelphia's Carlos Ruiz had his 10-game hitting streak snapped...Houston's Carlos Lee had his seven-game hitting streak broken.