Trailing 1-0, the Astros loaded the bases with two outs in the first inning off Jaime Garcia (2-2) and Johnson golfed an 0-2 pitch into the left field bleachers, breaking the contest open.
Jed Lowrie added a two-run shot for Houston, which clinched its three-game series against National League Central-leading St. Louis.
After yielding an unearned run in the first, Norris (2-1) settled down to tame the Cardinals on three hits, overcoming four walks while striking out four.
Garcia finished by allowed six runs on four hits in a six-inning effort for the Cards, who dropped their third straight.
Exploding whale video goes viral on Internet
Trader Joe's: Car crashes into Long Island store, injuring 11