DETROIT (AP) -- George Springer retreated to the wall in right field and made a valiant stab at Miguel Cabrera's deep fly ball.
The ball nicked off his glove and went over for a home run, and the Houston outfielder fell to the ground.
''He gave it a great effort, and he came awfully close,'' Astros manager Bo Porter said. ''You can't ask more from a player than what he gave us there.''
Cabrera hit a two-run homer in the first inning, and Rick Porcello pitched effectively into the seventh to the lead the Detroit Tigers to their eighth straight win, 3-2 over the Astros on Wednesday night.
Houston has lost five straight and seven of eight, but on this night the Astros could legitimately say they were only a few inches from a victory.
Victor Martinez homered for the Tigers, extending his hitting streak to 10 games. Porcello (5-1) allowed two runs and seven hits in 6 2-3 innings. He struck out five and walked two.
Houston's Brad Peacock (0-3) allowed three runs and four hits in 6 2-3 innings. He struck out four and walked four.
''I felt great out there. I gave up two homers when I made exactly the pitches I wanted to make,'' Peacock said. ''That's why those are two of the best players in baseball.''
Joba Chamberlain got four outs in relief for the Tigers, and Joe Nathan pitched the ninth for his seventh save in nine chances. Nathan struck out Matt Dominguez with a man on third to preserve the win.
After a slow start, Cabrera is again swinging the bat with authority for the Tigers. After homering in a four-hit, four-RBI performance Tuesday night, he stepped to the plate with a man on Wednesday and lifted a homer to right.
Porcello allowed a run in the third when Marwin Gonzalez doubled and eventually scored on Dexter Fowler's groundout, but the Detroit infield turned double plays in the fifth and sixth innings to help the 25-year-old right-hander. In the fifth, Gonzalez was on first and took off toward second when Jose Altuve hit a grounder up the middle. Detroit second baseman Ian Kinsler, in the area because of the steal attempt, simply picked up the ball, stepped on the bag and threw to first for the double play.
Martinez hit an 0-2 pitch over the wall in right to make it 3-1 in the sixth.
''I threw Victor two changeups down, and he didn't chase either of them, so I figured I'd throw something up and hope he'd chase that,'' Peacock said. ''I put it right where I wanted it, and he chased it, and hit it out. There's not much you can do about that.''
It was Martinez's sixth home run of the season, and he's hitting .318 with only five strikeouts all year.
''You can't set Victor Martinez up - he's just too good at getting the barrel to the ball,'' Detroit manager Brad Ausmus said. ''I don't think it matters what pitch you throw, he's generally going to find a way to do it.''
Houston answered with a run in the seventh, chasing Porcello. Marc Krauss hit a two-out double, Dominguez followed with a single, and Gonzalez singled to drive in Krauss.
Chamberlain came on and retired Altuve with men on first and second to end that threat. The big reliever then struck out the side in the eighth.
Nathan entered in the ninth and allowed a two-out walk to Krauss. Pinch-runner Jonathan Villar stole second and third, but Dominguez went down swinging to end it.
NOTES: The game started after a 9-minute rain delay, and the wet weather persisted during the early innings. ... Detroit's Torii Hunter had his hitting streak snapped at 13 games. ... Peacock has gone eight straight starts - dating to last season - without allowing more than three earned runs. ... Springer struck out three times. ... Detroit's Drew Smyly (2-1) faces Houston's Dallas Keuchel (2-2) on Thursday in a matchup of former college teammates at Arkansas.