By Karamata regular variation theory, we show the existence and exact asymptotic behaviour of the unique classical solution u ∈ C 2 + α ( Ω ) ∩ C ( Ω ¯ ) near the boundary to a singular Dirichlet problem − Δ u = g ( u ) − k ( x ) , u > 0 , x ∈ Ω , u | ∂ Ω = 0 , where Ω is a bounded domain with smooth boundary in ℝ N , g ∈ C 1 ( ( 0 , ∞ ) , ( 0 , ∞ ) ) , lim x → 0 + ( g ( ξ t ) / g ( t ) ) = ξ − γ , for each ξ > 0 and some γ > 1 ; and k ∈ C loc α ( Ω ) for some α ∈ ( 0 , 1 ) , which is nonnegative on Ω and may be unbounded or singular on the boundary.