Beşiktaş made history as they broke through Porto's defense to kick off their Champions League campaign with a 3-1 win Wednesday.
Porto were yet to concede this season, but Talisca, Cenk Tosun, and Ryan Babel all scored for the visitors at Estadio do Dragao.
After Talisca opened the scoring, Porto equalized thanks to an own goal by Beşiktaş defender Dusko Tosic. But, Tosun gave the Turkish side the lead again before halftime, and Babel sealed the victory in the second half.
Beşiktaş coach Şenol Güneş said: "We won only one match. We made a good start. After this result, Monaco and Leipzig will be more careful against us. We have difficult matches ahead."
Talisca said, "It was a great game from us, defensively as well as in attack."
"We did exactly what our coach asked of us and everything worked out well. We had a very good first half, while Porto dominated us somewhat in the second but we knew how to stand up to that."
Beşiktaş's new defender and former Porto player Pepe said, "It was a very difficult and important match for me. I spent three perfect years at Porto and I want to thank my former club."
Pepe was a Porto player from 2004 to 2007, winning two Liga championships; he registered six goals in 64 Liga games.
Porto have won only two of its last eight home matches in European competitions. It was coming off five straight wins to start the season in Portugal, all without conceding. They were without Vincent Aboubakar and Maxi Pereira because of suspensions. Aboubakar played on loan with Beşiktaş last season.
"We had enough chances to have ended with a different result," Porto coach Sergio Conceicao said.
In the other Group G match, Leipzig made its Champions League debut with a 1-1 home draw against Monaco.
In Group H, Cristiano Ronaldo struck twice as Real Madrid thrashed Apoel Nicosia 3-0 to start their Champions League three-peat bid in perfect fashion Wednesday. Sergio Ramos netted Madrid's third goal.
"[Ronaldo] is the best in the world, we know he will always score goals," Madrid coach Zinedine Zidane said. "With a bit more luck today he could have scored four."
With the win, Madrid moved top of the group, level on points with Tottenham who beat Borussia Dortmund 3-1 in a thriller at Wembley. English forward Harry Kane scored two for Spurs.
"A lot of people have been talking about how this is such a tough group for us, but we're here to prove ourselves against the best," said Kane.
Dortmund coach Peter Bosz said: "We weren't well organized when they scored. The not given goal (by Aubameyang) decided the game."
In Group E, Liverpool drew 2-2 with Sevilla and Maribor tied 1-1 with Spartak Moscow, while visiting Manchester City thrashed Feyenoord 4-0 to move top of Group F and Shakhtar Donetsk beat Napoli 2-1.
"We wanted to win the ball back quickly and get the crowd behind us. The lads reacted brilliantly to going behind and there are positives from the game," Liverpool captain Jordan Henderson told BT Sport.
"We had plenty more chances to score so we need to be more ruthless and go three or four up."