Match ends, Bristol City 1, Ipswich Town 0.
Bristol City moved to within a point of the Championship play-off places with a narrow win over Ipswich Town.
The Robins had fallen off the pace with a run of two wins in 13 league games, but after a quiet first half Lee Johnson's side secured crucial points.
Milan Djuric missed a rebound before heading in Lloyd Kelly's cross from close range to open the scoring.
Frank Fielding reacted well to prevent a Martyn Waghorn corner curling in to secure a league double over Ipswich.
The Tractor Boys had not lost both league matches in a season against Bristol City since 1978-79, but Waghorn's dangerous delivery was the closest they came as they mustered only two shots on target.
Jordan Spence headed over the crossbar in the first half, and Mick McCarthy's side had goalkeeper Bartosz Bialkowski to thank for keeping it goalless with saves from Bobby Reid and Kelly.
The Pole spilled a Marlon Pack shot at the feet of Djuric, who dinked over the bar, but then buried a downward header minutes later for the breakthrough.
The Bosnian's goal, following a period out injured, sealed just a third win in all competitions in 2018 for City, who benefited from Middlesbrough's 1-1 draw at Brentford to move up to seventh, within a point of Tony Pulis' side.
Bristol City head coach Lee Johnson:
"Milan deserved that after the season he has had and he could be a big player for us over the remaining games. He has had a lot of fitness problems since joining us.
"It was a massive win for us today in terms of maintaining belief among our fans.
"Ipswich are a side who do remarkably well considering their resources and have an excellent manager. It was never going to be easy."
Ipswich boss Mick McCarthy:
"My only complaint is that we conceded a goal. I can't fault the players in any other respect and I felt both teams handled the conditions well.
"I felt we should have taken something from the game. We didn't have as much of the ball as them, but we had as many opportunities.
"We could have defended better for the goal, but overall I thought we played well."
- 23MagnussonSubstituted forHegelerat 71'minutes
- 7SmithBooked at 84mins
- 20PatersonSubstituted forO'Neilat 83'minutes
- 9DiedhiouSubstituted forDjuricat 56'minutes
- 3KnudsenBooked at 87mins
- 18WardSubstituted forCelinaat 83'minutes
- 20SearsSubstituted forMorrisat 90+4'minutes
- Darren England
- Shots on Target
Second Half ends, Bristol City 1, Ipswich Town 0.
Foul by Marlon Pack (Bristol City).
Cole Skuse (Ipswich Town) wins a free kick in the defensive half.
Substitution, Ipswich Town. Ben Morris replaces Freddie Sears.
Attempt missed. Martyn Waghorn (Ipswich Town) header from the centre of the box misses to the right. Assisted by Jordan Spence with a cross.
Foul by Milan Djuric (Bristol City).
Adam Webster (Ipswich Town) wins a free kick in the defensive half.
Jonas Knudsen (Ipswich Town) is shown the yellow card for a bad foul.
Eros Pisano (Bristol City) wins a free kick in the defensive half.
Foul by Jonas Knudsen (Ipswich Town).
Delay over. They are ready to continue.
Delay in match Bailey Wright (Bristol City) because of an injury.
Delay in match Callum Connolly (Ipswich Town) because of an injury.
Korey Smith (Bristol City) is shown the yellow card for a bad foul.
Foul by Korey Smith (Bristol City).
Freddie Sears (Ipswich Town) wins a free kick on the left wing.
Korey Smith (Bristol City) wins a free kick in the attacking half.
Foul by Cameron Carter-Vickers (Ipswich Town).
Substitution, Ipswich Town. Bersant Celina replaces Grant Ward.