Cитуация такая: Есть код(генерирует случайные картинки): PHP: <?php header ("Content-type: image/gif"); header("Cache-Control: no-cache, must-revalidate"); $img = imagecreatetruecolor(800, 600); $zzz=imagecolorallocate($img, rand(0,255), rand(0,255), rand(0,255)); imagefilledrectangle($img,0,0,800,600,$zzz); for($i=0;$i<rand(5,40);$i++){ $inkline = imagecolorallocate($img, rand(0,255), rand(0,255), rand(0,255)); imageline($img,rand(20,780),rand(25,580), rand(20,780),rand(25,580),$inkline); for($n=0;$n<rand(100,250);$n++) { imagesetpixel($img,rand(0,800),rand(0,600),$inkline); } } imagegif($img); imagedestroy($img); ?> Вроде бы все хорошо, но через некоторое время получаются одинаковые картинки. Собсно вопрос: В чем проблема? p.s Я догадываюсь что проблема в кэшировании сервером. Если да то как отключить?
Попробуй такие хидеры, рандомизируй имя запрашиваемого файла... Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache
Действительно! Повторы все убрались! PHP: for($i=0;$i<mt_rand(mt_rand(20,40),mt_rand(40,100));$i++){ $line=imagecolorallocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255)); imageline($im,mt_rand(1,800),mt_rand(1,600),mt_rand(1,800),mt_rand(1,600),$line); for($p=0;$p<mt_rand(mt_rand(200,350),mt_rand(350,600));$p++){ $pix=imagecolorallocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255)); imagesetpixel($im,mt_rand(1,800),mt_rand(1,600),$pix); } }