Hapoel Be'er Sheva will head to St Mary's for a winner-takes-all battle with Southampton after Ben Sahar's stoppage-time winner completed a 3-2 come-from-behind win which sent Inter Milan out.
First-half goals from Mauro Icardi and Marcelo Brozovic put Inter in control in Israel, but Lucio Maranhao gave Hapoel a second-half lifeline before Anthony Nwakaeme converted from the penalty spot after Inter Milan goalkeeper Samir Handanovic was sent off.
Anderlecht, St Etienne, Roma, Genk, Athletic Bilbao, Olympiacos and Krasnodar all got the results they needed to go through.
Anderlecht beat Group C whipping boys Gabala 3-1 in Baku, with Rashad Eyubov sent off late on for the hosts.
And later, St Etienne's goalless draw with Mainz was enough to send the Ligue 1 side through.
Athletic Bilbao and Genk both advanced from Group F with wins over Sassuolo and Rapid Vienna respectively.
Raul Garcia and Aritz Aduriz helped Athletic come from behind to beat Sassuolo 3-2, while Nikos Karelis struck in a 1-0 Genk win against Rapid Vienna.
Roma simply needed to avoid defeat against Viktoria Plzen but Edin Dzeko bagged a hat-trick in a 4-1 win.
Austria Vienna missed the chance to follow them through in Group E as they lost 2-1 at home to Astra, with Constantin Budescu scoring an 88th-minute winner from the penalty spot.
A 1-1 draw with Young Boys was enough for Olympiacos, but APOEL could not follow them out of Group B as they lost 2-1 to Astana, having played almost an hour with 10 men thanks to Inaki Astiz's dismissal. Astana got an 84th-minute winner from Djorde Despotovic.
A 1-1 draw with Salzburg was enough for Krasnodar thanks to Nice's 2-0 loss to Group I leaders Schalke.
However, Krasnodar left it late, with Fedor Smolov cancelling out Munas Dabbur's first-half strike with only five minutes remaining.
Several others passed up their opportunities.
A win for either Celta Vigo or Standard Liege in their head-to-head clash would have sent the victors through from Group G, but it finished 1-1 as Kostas Laifis levelled for Standard with nine minutes left.
Iago Aspas had struck for Celta eight minutes in, but he was sent off in stoppage-time.
Ajax made sure of topping the group with a 2-0 victory over winless Panathinaikos, having handed European debuts to four teenagers and seen Kenny Tete score his first senior goal.
Braga also knew a win would do, but they were held to a 2-2 draw by Gent, with all four goals coming in the first half.
Group H winners Shakhtar Donetsk enjoyed a 4-0 rout of Konyaspor.
Group L is still open too with only one point separating leaders Osmanlispor from the other three in the group.
Steaua Bucharest beat the group leaders 2-1, while Villarreal were held to a 1-1 draw at Zurich, who levelled from the penalty spot in the 87th minute through Roberto Rodriguez.
PAOK's stoppage-time goal muddied the picture in Group J. Fiorentina would have advanced with a draw but Garry Rodrigues struck in the third minute of time added on to deny them.
Liberec needed to win to stay alive and duly beat Qarabag 3-0, so all four teams have options going into the final match.
Fenerbahce's comfortable 2-0 win over the 10 men of Zorya kept the pressure on Manchester United, who needed to beat Feyenoord in the late fixtures to stay alive.
They duly responded with a 4-0 win, sparked by Wayne Rooney's opener which made him the record European goalscorer in club history.
Zenit St Petersburg, already through, continued their march through Group D with a 2-0 win over Maccabi Tel-Aviv. Also in Group D, AZ won 1-0 away to Dundalk to keep the three other teams in contention.