Henrik Larsson's stunning diving header after just 50 seconds put Celtic in command. The Swede's clinical finish, from Phil O'Donnell's precise cross, was a great morale booster for the Glasgow side.
Vitoria hit back and gave Celtic some nervous moments, but a second goal, from Simon Donnelly after 70 minutes, increased the Scottish side's lead. However, an 87th-minute goal from Geraldo gave the Portuguese club some hope for the second leg.
Jorg Albertz rediscovered his scoring touch to give Rangers a deserved 1-1 draw away to Beitar Jerusalem in the same tournament. The German midfielder had had to settle for a place on the bench even though Rangers were without a number of key players, but he was called into play in the 78th minute, with Rangers trailing.
Albertz made a dramatic impact, taking just six minutes to get the equaliser. He started the move, picking out Andrei Kanchelskis with a cross-field pass. The Russian international winger took it on and waited until Albertz had made his run to the edge of the area, and the German thundered in a 25-yard drive that went beyond the Beitar goalkeeper, Itzhak Kornfein.
Elsewhere in the Uefa Cup, Parma's enormous summer spending spree counted for little as they were beaten 1-0 by Fenerbahce in Turkey. The Italian Serie A aristocrats spent more than pounds 30m in the close season to strengthen their already impressive squad, but were undone by a 23rd-minute header from the former Coventry City striker, Viorel Moldovan.
Parma were not helped by a red card for the midfielder Dino Baggio after an hour and ended with nine men as the defender Fabio Cannavaro was sent off in injury time.
Werder Bremen's nightmare start to their season continued as they were deservedly beaten by Brann Bergen. Werder are bottom of the German Bundesliga with just one point from four games and lost to goals in each half by Arne Vidar Moen and Kjetil Lovvik for the Norwegian side.
Marseilles needed an equaliser by Eric Roy seven minutes from time to salvage a 2-2 draw at Sigma Olomouc of the Czech Republic. Fabrizio Ravanelli had put the French side ahead after 29 minutes but a two-goal burst by Marek Heinz just before the break put Marseilles in arrears.
Skonto Riga of Latvia produced a superb performance to draw 2-2 away at Dynamo Moscow. Konstantin Golovskoi put Dynamo ahead after two minutes but Mikhail Mikholap and Marian Pakhar, either side of half-time, put Skonto ahead. Andrei Ostrovsky equalised in the 69th minute, but Dynamo finished with 10 men after Erik Yakhimovich was sent off.