Zlatan Ibrahimovic missed a penalty but AC Milan beat Bologna 2-1 on Saturday to extend their lead in Serie A, as champions Juventus kept the pressure on with a win at Sampdoria.
Milan bounced back after losses to Atalanta in the league and to city rivals Inter Milan in the Italian Cup on Tuesday, a game in which Ibrahimovic was sent off.
Stefano Pioli's side pulled five points clear of second-placed Inter who later host 11th-placed Benevento.
"It was a strong response from the team. A victory that gives us confidence at the end of a difficult week," said Pioli.
Juventus moved third, seven points off top spot with a game in hand, after goals in either half from Federico Chiesa and Aaron Ramsey in a 2-0 victory over midtable Sampdoria.
The midweek Milan derby was overshadowed by a clash between Ibrahimovic and former Manchester United teammate Romelu Lukaku.
Ibrahimovic on Saturday drew a blank for a second straight league game for the first time this season.
Bologna goalkeeper Lukasz Skorupski made a brilliant double save from the Swede early on.
The visitors were awarded a penalty when Mitchell Dijks brought down Rafael Leao, with Ibrahimovic stepping up to take it.
But the 39-year-old's poor record from the spot continued with his fourth penalty miss in all competitions this season.
Luckily, Rebic was on hand to slide in the rebound after Skorupski's save.
Franck Kessie took Milan's second penalty 10 minutes after the break following an Adama Soumaoro handball.
The Ivorian made no mistake, planting the ball into the middle of the net.
Substitute Andrea Poli pulled a goal back for 13th-placed Bologna against his former club with nine minutes to go.
And Milan needed Gianluigi Donnarumma to make a late intervention, the goalkeeper stretching to tip away Roberto Soriano's diving header a minute later.
"We lost two games, but immediately raised our heads, that was the important thing," said Kessie.
"The penalty taker is Ibra, it's up to him, when he doesn't feel like taking it, I kick."
In Genoa, Cristiano Ronaldo failed to score for the third consecutive league game, but Juventus continued their climb up the table.
The Portuguese striker has been criticised for breaking coronavirus rules with a visit to a mountain resort for his girlfriend's birthday.
Chiesa opened the scoring on 20 minutes after a move involving all three Juventus forwards.
Alvaro Morata played a one-two with Ronaldo, before the Spaniard's low cross was slotted in by Chiesa.
Claudio Ranieri's Sampdoria came close to an equaliser, with Juventus goalkeeper Wojciech Szczesny denying Fabio Quagliarella a goal against his former club on the eve of his 38th birthday.
Morata had a goal ruled out for offside on 56 minutes for Juve, who had to wait until injury time to score a second.
Ronaldo's cross-field pass found the run of Juan Cuadrado who laid it on a plate for Ramsey to tap in his second league goal of the season.
"The attitude is right, we finish a positive January in which we have grown a lot, even if we could have killed off the game sooner," said Juventus centre-back Giorgio Chiellini.
Juventus moved two points ahead of fourth-placed Roma, who host Hellas Verona on Sunday, with the two teams set to meet next weekend in Turin.