
The hosts squandered more than a dozen clearcut chances in the first half, with Diaz and Joselu missing sitters from close range.
They were also frustrated by goalkeeper Alvaro Valles who made a number of fine saves before Diaz broke the deadlock with a close-range strike in the last play of the first half.
Joselu extended Real’s lead in the 54th minute, nodding a lobbed cross from Rodrygo into the net.
Real moved up to second place on 18 points, leapfrogging third-placed Barcelona who were held to a 2-2 draw by Mallorca on Tuesday.
Girona are the surprise leaders on 19 points after they fought back to win 2-1 at Villarreal on Wednesday and remain unbeaten after seven games of the LaLiga season.