HOUSTON -- Even Andrew Heaney couldn't remember his last road win.
"Apparently, it's been awhile," the left-hander said.
Heaney (8-8) scattered five hits with six strikeouts to earn his first road win since Sept. 2, 2015, at Oakland, a span of 17 straight road starts.
"Heater was good," Heaney said. "Breaking ball mixed in at times, and I really didn't throw the changeup all that much. ... I got some timely outs. I kept them from building that big inning."
After missing all but one start in 2016 with Tommy John surgery and starting just five games in 2017 -- including three on the road- he began the day 0-5 in 12 road starts this season.
Heaney, who allowed five runs in six innings in his last start Friday against the Astros, improved to 3-1 against Houston this season and allowed fewer than two runs in three of the four outings.
"Coming from just facing them last week, it looked like his command was where it needed to be," Angels manager Mike Scioscia said. "He had all his pitches working. He pitched ahead in counts. He checked all the boxes that should lead to a great outing."
Heaney's only other shutout start this season was June 5 against Kansas City in which he threw a one-hitter. He had allowed 11 runs in his last two starts.
"We saw him a couple days ago and he didn't quite have the velo that he had tonight," Houston manager AJ Hinch said. "And then I think four out of the first five innings we had baserunners and they were erased one way or another, so he was able to escape any baserunners that we had. He threw a really good game.
Justin Upton, who was reinstated off the disabled list earlier in the day, put the Angels on top 1-0 with an RBI single to right earlier in the inning, chasing Justin Verlander. Kole Calhoun started the inning with a double and moved to third on Mike Trout's one-out single.
"We got some big hits in the sixth inning," Scioscia said. "We haven't gotten too many good looks at Justin all year, but tonight, we got him in the sixth."
Ohtani scored on Chris Devenski's balk in the eighth to increase the lead to 5-0.
The AL-West leading Astros began the day 2 1/2 games up on Oakland.
Verlander (13-9) allowed three runs and five hits but struck out 11 in 5 1/3 innings. He allowed three or more runs for the third straight start.
"Not great; we lost," Verlander said of his night. "Feel like I had good stuff. Unfortunately, I gave up a couple hits in a row and those guys were able to capitalize on it."
Tyler White hit a two-run homer to left field in the ninth as Houston avoided the shutout.
Angels: RHP Ohtani (right UCL sprain) will start Sunday against the Astros. Ohtani, who threw a simulated game on Saturday, last pitched for the Angels on June 6. ... 1B Albert Pujols (left knee) was placed on the 10-day disabled list after undergoing an arthroscopic debridement in Los Angeles on Wednesday. The general timetable to return to playing from the procedure is at least six weeks. "That's a big loss for us," Scioscia said. "I think Albert is part of the heart and soul of this club." ... RHP Matt Shoemaker will join the team in Houston and throw a bullpen sometime during the weekend, with the possibility of joining the rotation sometime early next week if everything goes well, Scioscia said. Shoemaker threw four hitless innings allowing one unearned run on two walks and six strikeouts Wednesday in a rehab start with Class A Inland Empire. ... C Jose Briceno was recalled from Triple-A Salt Lake Thursday.
Astros: C Brian McCann (right knee) will catch on Saturday, Hinch said. McCann has been on the disabled list since July 1.
Angels: RHP Jaime Barria (8-8, 3.67 ERA) will make his 21st start of the season Friday against the Astros looking to rebound after allowing four runs in three innings in his last start Saturday against them.
Astros: LHP Framber Valdez (2-0, 0.96) will make his first career home start Friday against the Angels looking for another good outing after allowing one run in five innings in his last start Saturday against them.
For more AP baseball coverage: https://apnews.com/tag/MLBbaseball and https://twitter.com/AP-Sports
Law: James Paxton's injury history a concern, but talent can't be ignored
James Paxton has never thrown more than 160 1/3 innings in a season because of injuries, but he has the talent to be a force atop the Yankees' rotation.
James Paxton has power arm that can propel Yankees
The Yankees had to part with top pitching prospect Justus Sheffield, but he was the only top-end minor leaguer they sent to Seattle.
Fantasy baseball fallout of James Paxton-Justus Sheffield trade
The Big Maple is on his way to the Big Apple. What does it mean for his fantasy value? And what can be expected from Justus Sheffield with the Mariners in 2019? Our experts provide their take on Monday's big trade.
Yankees land James Paxton in trade, send top prospect to Mariners
The Mariners and Yankees completed a trade Monday that sends ace left-hander James Paxton to New York for three prospects, including top-rated lefty Justus Sheffield.
World Series MVP Steve Pearce: Boston 'the place that I wanted to be'
World Series MVP Steve Pearce, who has played for seven teams in a 12-year career, says it was a "no-brainer" to return to the Red Sox for another year.
Griffin Conine, son of Mr. Marlin, tests positive for banned stimulant
Griffin Conine, an outfielder in the Blue Jays system and son of former MLB star Jeff Conine, has been suspended for violating the minor league drug program.