Cypriot side APOEL survived 90 minutes of incessant pressure from Zenit St. Petersburg to hang on for a 0-0 draw and qualify for the knockout stages of the Champions League on Wednesday.
The draw brings APOEL to nine points at the top of Group G, one ahead of Zenit and five ahead of Porto in third with one match remaining, becoming the first Greek Cypriot team to progress to the sharp end of the competition.
Zenit could join APOEL in the knockout stages if Porto lose later to Shakhtar Donetsk, but will otherwise need at least a draw against the Portuguese in the final group match on December 6.
In a match that resembled one-way traffic, Aleksandr Bukharov came closest to breaking the deadlock, hitting the crossbar with a thumping header and having another effort cleared off the line.
The Russian forward had at least five other attempts on goal but couldn't find a way past APOEL goalkeeper Urko Pardo, the visitors' hero of the night.
Konstantin Zyryanov zipped a low drive at goal on 20 minutes but a defender blocked.
Roman Shirokov had a shot cleared off the line after Danny and Bukharov combined well down the right.
Brazilian striker Ailton had a rare shot on goal for the visitors, missing moments later with a backheel that found the side netting.
Bukharov then muscled a defender aside in the box but span and shot over.
APOEL goalkeeper Pardo made a top reflex save from a Bukharov volley on 40 minutes, a chance that came courtesy of APOEL defender Nuno Morais missing his kick.
Bukharov got too much on a glancing header just before half time after Aleksandr Anyukov found him in a good position with a pinpoint cross from the right.
Italian leftback Domenico Criscito blazed over from a Danny knockdown after the break On the hour mark Bukharov hit the crossbar and could only shank the follow-up wide.
Both teams left the pitch for five minutes to allow smoke from flares lit by Zenit fans to dissipate.
Bukharov rolled an effort toward goal on 74 minutes after clattering into Pardo, but a defender the ball just before it trickled over the line.
Pardo was at full stretch to tip a Danny curler over the bar on the next attack.
Zenit had a strong penalty appeal turned down at the death when Anyukov was tripped in the box.