Nabil Ghilas was once more the hero as Porto secured a 2-2 draw at Napoli to reach the quarter-finals of the UEFA Europa League.
Leading 1-0 from the first leg thanks to Jackson Martinez's goal, Napoli levelled Thursday's tie through Goran Pandev's first-half strike at Stadio San Paolo.
The hosts piled on the pressure and spurned several chances in search of a crucial second goal.
And Napoli were harshly punished by substitute Ghilas on the break in the 69th minute, with the Algeria striker having also scored the equaliser in a 3-3 draw against Eintracht Frankfurt that sent Porto into the last 16 on away goals.
Ricardo Quaresma then put the tie seemingly beyond doubt with a superb strike 14 minutes from time before Duvan Zapata netted a late equaliser to level on the night, but Porto progressed with a 3-2 aggregate victory that boosts interim coach Luis Castro's hopes of getting the role on a permanent basis.
Napoli head coach Rafael Benitez had described the tie as "like a final" in the build-up and his side rose to the occasion in the first half to lead thanks to Pandev's calm finish.
But Porto's quick turnaround in the second half ended the Spaniard's hopes of winning the Europa League for the second straight year, following his triumph with Chelsea in the 2013 final.
Napoli began the match at a quick tempo and created two chances in the opening 10 minutes. Dries Mertens was first denied by Fernando's fine last-ditch tackle, before Lorenzo Insigne stung the palms of Porto goalkeeper Fabiano.
Benitez's men continued to control play and full-back Henrique flashed a half-volley across the face of goal after quarter of an hour.
And Napoli's early pressure paid dividends in the 21st minute, as Benitez's men deservedly levelled the tie on aggregate.
Gonzalo Higuain held the ball up on the edge of the area before his neat throughball found Pandev's clever run into the box and the forward provided a delicate finish past Fabiano.
Porto sought an equaliser, but it took 33 minutes for the visitors to threaten Pepe Reina's goal, when Quaresma's corner was headed wide at the back post by Martinez.
The lively Insigne then threatened to put Napoli ahead as he cut inside Danilo from the left and flashed a shot wide of the near post.
The diminutive forward went close again early in the second half, but his downward header at the back post was expertly saved by Fabiano at point-blank range.
Porto had offered little going forward, yet nearly snatched a goal in the 57th minute when Quaresma's free-kick was glanced narrowly wide by Carlos Eduardo.
Napoli then had two good chances to take the lead in the tie through Higuain and Mertens before their wastefulness was duly punished.
First, Ghilas – who had replaced Silvestre Varela - sprung the offside trap to receive Fernando's superb throughball and keep his composure to slot firmly past Reina.
And, with just under 15 minutes remaining, Quaresma weaved his way through the defence before unleashing into the roof of Reina's goal.
Napoli clinched a draw on the night in injury time when Jose Callejon's ball across the six-yard box was tapped home by Zapata, but it was too little, too late for the hosts.
|Coach: Rafael Benítez|
for G. Pandev 68'
for G. Higuaín 79'
for D. Mertens 83'
|Arnautovic signs new Stoke deal|
|Smith leaves Liverpool for Bournemouth|
|Barcelona insist Arda Turan will stay|
|Andre Gomes: Barcelona suit my identity better than Real Madrid|
|Niersbach to appeal FIFA ban|
|Barcelona agree Mascherano renewal|
|Fernandinho can play in 10 positions - Guardiola|
|Reading´s kit launch is out of this world|
|Ben Arfa: I do not want to be PSG´s star player|
|FA Cup to trial fourth substitute|
|We want Balotelli and he wants us, says Besiktas chief|
|Crowd welcomes Higuain as he arrives for Juventus medical|
|Guardiola warns Man City stars: If you´re not fit, danger is coming|
|Mkhitaryan prepares to prove himself at United|
|Cavani: No pressure replacing Ibrahimovic|
|Wenger vows to keep transfer plans ´secret´ after Lacazette snub|
|Brannagan open to Championship loan move|
|Wenger wants to sign Mertesacker replacement|
|Ancelotti: Bayern´s transfer business done|
|Brisbane Roar sign former Danish international Kristensen|
|Verratti, Luiz missing for PSG|
|Sounders part ways with foundation coach Schmid|
|Mane turned down Manchester United for Liverpool|
|Zidane on Pogba: Until August 31, anything can happen|
|Mkhitaryan driven by father´s death|
|Inter rejected Napoli offer for Icardi, says president|
|Clichy: City fighting fit after Guardiola pizza ban|
|Everton and Burnley win as Hull are held|
|Ajax held by PAOK after Cillessen howler|
|Conte left frustrated by ´crazy´ money in transfer market|
|Neymar makes Barcelona case to Gabriel Jesus|
|Rostov comeback twice for Champions League draw with Anderlecht.|
|Arsenal defender Mertesacker set for lengthy lay-off|
|Conte not selling ´fantastic´ Matic|
|Ibrahimovic keen on MLS and Beckham´s Miami project|
|Neymar: I play for Messi, he´s the man|
|Barcelona reveal details of Andre Gomes deal|
|Suarez bullish over Barcelona prospects|
|Ajax claim Napoli keen on Milik to replace Higuain|
|Totti labels Higuain´s Juventus move ´a disaster´|
|Juventus confirm Higuain deal|
|Pato to Villarreal ´in the final stage´|
|PSG sign Lo Celso|
|Muller: Beating Dortmund will be more fun this season|
|Juventus sign Higuain from Napoli for €90m|
|Pastore: I´m like God in Paris|
|Injured Lanzini out of Olympics|
|Allegri unperturbed by Higuain fee|
|Menezes replaces Bento at Cruzeiro|
|Sporting rejected major bids from Inter and Liverpool for Joao Mario, claims father|
|Pochettino pleased by Tottenham despite Juventus defeat|
|Eriksson: Allardyce the right man for England|
|Mourinho makes United train after stepping off plane from China|
|Hazard can still match Messi, says Pedro|
|Pjanic shows there is life at Juve, with or without Pogba|
|Juventus 2 Tottenham 1: Benatia bags win for Serie A champions|
|Dembele: I am not the Bundesliga´s next superstar|
|Lyon claim €35m Arsenal offer for Lacazette rejected|
|Donnarumma dreaming of Milan captaincy as he eyes long-term stay|
|Robson: Ibrahimovic can match Van Persie´s first year at United|
|Rooney should remain England captain - Eriksson|
|Emery wants new striker at PSG|
|Santos accept Juventus bid for Gabriel|
|Eriksson expects Sweden to try and tempt Ibrahimovic out of retirement|
|Spurs signing Janssen almost quit|
|Leicester stay best for Mahrez - Ranieri|
|Allardyce to take Mourinho cue on Rooney|
|Ings ready to outdo big-money signings|
|Henderson optimistic over Liverpool campaign|
|Allardyce hardened to the challenge of England post|
|Barcelona announce record revenues for 2015-16|
|Moyes enjoys Sunderland win as Palace beat Colchester|
|Stoke complete Allen signing|
|Roma coach Spalletti warns suitors off Manolas|
|Cresswell out for up to four months with knee injury|
|Burnley fan banned by club for racist abuse|
|Dad won´t let me play at the Olympics - Larsson Sr pulls rank|
|Kostic joins Hamburg on five-year deal|
|Tevez: I´d turn down Chelsea and Napoli to stay at Boca|
|Mayoral inspired by Benzema for Wolfsburg stint|
|Allardyce straight into competitive action with England|
|Liverpool, Sevilla fined for Europa League final incidents|
|Barcelona seal Guillemenot signing as part of new Servette deal|
|Niersbach handed one-year ban over World Cup corruption|
|Chelsea and Everton ´still interested´ as Koulibaly eyes Napoli exit|
|´Still working hard´ - Balotelli trains with Liverpool kids|
|Winter breaks, long-ball football and the World Cup: Allardyce in his own words|
|Inter warn Napoli Icardi is not for sale|
|Zanetti wants Simeone back at Inter|
|Stoke snap up Sobhi|
|PSG tougher under Emery - Lucas Moura|
|Totti not ready for retirement - Pallotta|
|Confident Allardyce reveals plan for England success|
|Pochettino to discard three Tottenham players|
|Allardyce: Rooney must wait for captaincy decision|
|Aubameyang: I will only leave Dortmund for Real Madrid|
|Allegri silences questions on Pogba|
|Bruce stands by decision to quit Hull City|
|Pochettino: Not the right time for Argentina job|
|Inter yet to approach De Boer with Mancini exit rumoured|
|Ancelotti trusts me more than Guardiola - Ribery|
|Wijnaldum rejected Everton for Klopp|
|Pre-season Manchester derby cancelled|
|Coutinho excited by ´fast´ Liverpool recruits|
|Cristiano Ronaldo and Conor McGregor step into the ring together|
|Mancini coy on reports linking Icardi to Napoli|
|Nolito reveals why he chose Man City over Barcelona|
|Inter 1 Paris Saint-Germain 3: Icardi absence in defeat fuels Napoli talk|