e' un problema molto dibattuto e non esistono soluzioni definitive al problema.

C'è chi usa JS per aprire una pagina di popup con onbeforeunload che fa quello che chiedi, ma se uno non ha JS attivato non funziona

Stesso problema usando onbeforeunload e ajax

La soluzione di bubi1 è la più utilizzata.

Non avrai mai una certezza del reale momento in cui qualcuno lascia il sito.