A calamitous error from Besiktas goalkeeper Fabri allowed Lyon to snatch a dramatic 2-1 victory in the first leg of their Europa League quarter-final, though the game was soured by crowd disturbances prior to kick-off.
Just a minute after Corentin Tolisso had cancelled out Ryan Babel's early opener, Spaniard Fabri turned into trouble in his area, allowing Jeremy Morel to tuck home Lyon's winner.
There was a 45-minute delay to proceedings at Parc Olympique Lyonnais, after sections of the crowd were forced onto the pitch to take refuge from projectiles launched from the upper tier, which housed the travelling supporters.
Babel's third Europa League goal of the season put Besiktas ahead after a positive start, though Bruno Genesio's side almost levelled immediately when Nabil Fekir struck the woodwork.
Besiktas continued to exploit poor Lyon defending from set-pieces, with both Marcelo and Anderson Talisca squandering gilt-edged opportunities to extend the visitors' advantage.
Lyon dominated the second half though and, after Tolisso made amends for a dreadful miss with a close-range effort, Fabri's mistake enabled Morel to seal the victory six minutes from time, giving the Ligue 1 side a slim advantage heading into the second leg.
Besiktas looked sharp despite the lengthy delay to kick-off and wasted no time in testing Lyon's resolve early on - Marcelo seeing an overhead kick saved by Anthony Lopes before he was denied again by Mouctar Diakhaby.
Alexandre Lacazette drilled an effort into the side netting as Lyon carved out an opening themselves, but it was Besiktas who took a deserved lead 15 minutes in.
Talisca played a clever pass in the right channel to Babel from a free-kick, and the Dutchman made no mistake with a well-struck finish into the bottom-left corner.
3 - Ryan Babel has scored three goals from just four shots on target in the Europa League this season. Specialist. — OptaCan (@OptaCan) April 13, 2017
Fekir's scuffed half-volley looked set to restore parity soon after, only for the ball to deflect away off the underside of the crossbar.
Marcelo was causing havoc for Lyon at set-pieces, and the defender went close again as half-time approached - directing a close-range header over the bar from Oguzhan Ozyakup's corner.
Talisca should have doubled Besiktas' tally after the restart, but the playmaker somehow failed to hit the target with a header from six yards out.
Besiktas were spared moments later, Lacazette was clumsily felled by Fabri, but the Lyon man was offside and penalty appeals were swiftly extinguished.
Referee Antonio Miguel Mateu Lahoz dismissed another Lyon appeal after the hour-mark - rightly deeming that Fekir had dived under pressure from Atiba Hutchinson.
Marcelo's sloppy pass gifted Lacazette a golden chance with 20 minutes remaining, but Besiktas escaped unscathed as, having rounded Fabri, the forward skewed his effort wide.
Lyon's hopes of salvaging a result looked all-but over when Tolisso hit the post from point-blank range soon after, but the midfielder atoned to bundle in the equaliser from the hosts' next attack.
And, having kept Besiktas in the game for so long, Fabri ended up as the villain of the piece when he took one touch too many under pressure from Morel, who nipped the ball away and scored the simplest of goals.