Rangers 2-1 Stuttgart
Two goals in five minutes gave Rangers what at one stage had looked an unlikely victory over Stuttgart at Ibrox.
And those strikes from Christian Nerlinger and Peter Lovenkrands ended the Bundesliga side's run of five games without conceding a goal.
Kevin Kuranyi looked set to give the German side a winning start to life in the Champions League and leave Rangers with a mountain to climb to qualify from Group E.
The German international striker had struck in the dying seconds of a first half in which Rangers lost Fernando Ricksen to a sickening head injury.
But the Scottish champions fought back to defeat an in-form Stuttgart side who were at full strength after influential defender Marcelo Bordon appeared despite pre-match fitness fears.
Stuttgart had lost to Celtic on their last visit to Glasgow, but Felix Magath's young Bundesliga runners-up have matured in the seven months since.
Rangers were without the injured Craig Moore, Ronald de Boer and Steven Thompson for their first appearance in the Champions League group stages in three years.
But they started brightly and Shota Arveladze was unlucky to be ruled offside when clean through on goal, television replays proving the linesman was wrong to flag.
Stefan Klos was out to make a point after being frozen out of the German international squad and made a great save to block at the feet of Stuttgart's Alexander Hleb.
Rangers should have taken the lead after 23 minutes, a Mikel Arteta free kick finding Paolo Vanoli only for Timo Hildebrand to push away the diving header from 14 yards.
An Emerson through ball at the subsequent corner found its way to Arveladze 12 yards from goal, but the goalkeeper again managed to deflect the Georgian's low shot over the bar.
Rangers suffered a blow after 30 minutes, when Ricksen left the field in some distress to be replaced with Maurice Ross.
The Dutch defender had clashed heads with team-mate Henning Berg, who was able to carry on despite also bleeding from a cut head.
Stuttgart took the lead in first-half injury time after a Bordon free-kick took a deflection and hit the inside of the post.
Fernando Ricksen was taken off with a bad head injury
The flight of the ball left Klos stranded and Kuranyi was first react to drive the ball home from 12 yards.
Stuttgart grew in confidence and the half-time replacement of Vanoli with Lovenkrands appeared to have done little to help Rangers until they levelled after 74 minutes.
Nerlinger powered into the box and accepted a deflection off a defender to drive the ball home.
The home side took the lead when substitute Lovenkrands ghosted past two defenders and struck a drive from 20 yards that took a slight deflection past Hildebrand.
Lovenkrands struck the bar with another effort and missed the target from eight yards as Rangers came close to extending their lead in stoppage time.
Rangers: Klos, Ricksen (Ross 32), Berg, Khizanishvili, Ball,
Emerson (Capucho 65), Arteta, Nerlinger,
Vanoli (Lovenkrands 46), Arveladze, Mols.
Subs Not Used: McGregor, Ostenstad, Malcolm, Hughes.
Booked: Emerson, Nerlinger.
VfB Stuttgart: Hildebrand, Hinkel, Meira, Bordon,
Gerber (Szabics 81), Hleb, Soldo, Tiffert, Heldt (Meissner 69),
Kuranyi, Cacau (Amanatidis 47).
Subs Not Used: Heinen, Wenzel, Vranjes, Lahm.
Booked: Hleb, Heldt.
Referee: Gilles Veissiere (France).