Esos headers son de un archivo de imagen, por lo que se mostraría una imagen en el navegador, lo que yo hago siempre es usar una sola imagen y uso una función de redimensionar y paso la imagen por parámetro y el width y el height, lo hago como el ultimo ejemplo que colocaste, algo así:
Código PHP:
<?php
$consulta = mysql_query("select * from tabla");
while($item = mysq_fetch_array($consulta)) {
?>
<a href="<?=$item['imagen']?>">
<img src="redimensionar.php?w=100&h=100&imagen=<?=$item['imagen']?>" title="<?=$item['titulo']?>">
</a>
<?php
}//fin del while
?>
Puedes ver que el href esta hacia la imagen, por lo tanto el lightbox usara esa y no la redimensionada.
Esta es la funcion de redimesionar que uso, tiene que estar en un documento sola:
Código PHP:
<?php
$anchura=$_GET['w'];
$hmax=$_GET['h'];
$nombre=basename($_GET['imagen']);
$datos = getimagesize($nombre);
if($datos[2]==1){$img = @imagecreatefromgif($nombre);}
if($datos[2]==2){$img = @imagecreatefromjpeg($nombre);}
if($datos[2]==3){$img = @imagecreatefrompng($nombre);}
$ratio = ($datos[0] / $anchura);
$altura = ($datos[1] / $ratio);
if($altura>$hmax){$anchura2=$hmax*$anchura/$altura;$altura=$hmax;$anchura=$anchura2;}
$thumb = imagecreatetruecolor($anchura,$altura);
imagecopyresampled($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);
if($datos[2]==1){header("Content-type: image/gif"); imagegif($thumb);}
if($datos[2]==2){header("Content-type: image/jpeg");imagejpeg($thumb);}
if($datos[2]==3){header("Content-type: image/png");imagepng($thumb); }
imagedestroy($thumb);
?>