The much-changed Foxes had already qualified from Group G, while Porto reached the last 16 with victory, but barely put up a fight as they were outclassed
Andre Silva, Jesus Corona and Yacine Brahimi scored in the first half before Silva added a second-half penalty and Diogo Jota netted a fifth
Badly exposed and clearly lacking cohesion and confidence, the Foxes were embarrassed on a regular basis as their season threatens to go from bad to worse
The last time Leicester lost by five goals or more away from home was against Portsmouth in the Championship in 2010 but, even putting their Champions League qualification into context, it was a humiliation
With Jamie Vardy, Riyad Mahrez and Robert Huth left home, Claudio Ranieiri's shadow squad never got close to the 2004 champions as the Italian gambled on reviving their Premier League season by resting his big names
Two points above the relegation zone and with Manchester City visiting on Saturday the champions need to save their faltering season but at least have a last 16 tie next year to cling on to.
While changes were expected Ranieri sprung a surprise by picking Ben Hamer, with the goalkeeper's last club appearance coming against Walsall in the Checkatrade Trophy
The 29-year-old had not played for the senior side for almost two years while Marcin Wasilewski made just his second senior appearance of the season - having been sent off in his last one against Chelsea in the EFL Cup
Porto needed to win to qualify ahead of Copenhagen and set the tone by going ahead after just six minutes
Again it was another set-piece problem from the Foxes as Hamer had failed to keep the ball from going behind after a corner and when the second was swung in Silva beat Jeff Schlupp to head in from six yards
With much-changed Leicester on the defensive, Jota fired wide from distance as Porto dominated the opening 20 minutes, so much so that goalkeeper Iker Casillas did not touch the ball
The Foxes barely made it out of their own half and Silva missed a fine chance to make it 2-0 before Corona finally doubled the hosts' lead on 26 minutes
Leicester failed to heed the warning signs from Alex Telles and the left back swung in a fine delivery for the unmarked Corona to smash in a rising volley from 12 yards
Porto's confidence continued to grow with Leicester's resistance barely evident and Brahimi added a third a minute before the break when he finished off a neat move with a cheeky backheel
A commanding lead at the break was all Porto deserved with ramshackle Leicester falling apart and Ranieri attempted to stem the tide and replaced Schlupp and Ahmed Musa with Leonardo Ulloa and Marc Albrighton at half time
Demarai Gray twice shot off target soon after the re-start as the visitors showed signs of life but Jota almost resumed normal service when he dragged just wide
Leicester did at least have a generally solid opening to the second half but slipped 4-0 behind after 64 minutes
Danny Drinkwater clumsily fouled Silva in the box and the forward picked himself up to send Hamer the wrong way from the spot
The night got worse for Drinkwater, suspended for one more Premier League game, when he limped off injured and was replaced by 18-year-old debutant Harvey Barnes with 14 minutes left
And a minute later Porto added a fifth when Jota was sent clear and he rammed through Hamer's legs to complete the rout
Ulloa almost added a late consolation but his snap shot clipped the top of the bar
Source : PA
Source: PA