A dire il vero ci sarebbe un'altra soluzione: modifichi il tuo codice come segue
Codice PHP:
$image="/foto/image1.jpg";
list(
$width$height) = getimagesize($image);
$imgclr=imagecreatetruecolor(120,90);
$source=imagecreatefromjpeg($image);
$resize=imagecopyresize($imgclr,$source,0,0,0,0,120,90,$width,$height);

// imposto correttamente gli header 
header("Content-type: image/png");
// invio l'output come immagine PNG 
imagePng($resize); 

// libero la memoria 
imageDestroy($resize); 
In pratica in questo modo imposti gli header in modo che la pagina php venga letta dal browser come un'immagine png, il cui contenuto viene scritto nella pagina mediante la funzione imagePng. L'unico problema è che in questo modo la pagina php diventa a tutti gli effetti un'immagine, dunque non può contenere testo, che sarebbe letto come contenuto dell'immagine, generando errori.
Per risolvere questo problema è sufficiente utilizzare un'altra pagina html che inserisca la pagina php come una normale immagine:

[img]paginacheridimensiona.php[/img]

Ti consiglio di leggere questo utilissimo articolo di html.it, che spiega esaurientemente l'argomento:
http://php.html.it/articoli/leggi/87...erie-gd-e-php/

Spero di esserti stato utile!