Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在网页上加载大量php生成的图像_Php_Image_Http_Http Headers_Download - Fatal编程技术网

如何在网页上加载大量php生成的图像

如何在网页上加载大量php生成的图像,php,image,http,http-headers,download,Php,Image,Http,Http Headers,Download,我有一个网站,所有的页面都有很多图片。每个图像都是由PHP动态生成的(我的意思是img标记的src=”“属性类似于“/image.PHP?id=4553”) 我正在正确地控制缓存,以加快加载同一图像的次数,并且加载单个图像所需的时间非常快。问题在于,前5-6个图像是在页面加载的同时加载的,其他图像是在几秒钟后(5-10-15秒后)加载的。Firebug告诉我,问题是由于浏览器为了限制与服务器的同时连接而执行的请求排队 当我发送页面的HTML时,我尝试发送一个“Connection:Keep Al

我有一个网站,所有的页面都有很多图片。每个图像都是由PHP动态生成的(我的意思是img标记的src=”“属性类似于“/image.PHP?id=4553”)

我正在正确地控制缓存,以加快加载同一图像的次数,并且加载单个图像所需的时间非常快。问题在于,前5-6个图像是在页面加载的同时加载的,其他图像是在几秒钟后(5-10-15秒后)加载的。Firebug告诉我,问题是由于浏览器为了限制与服务器的同时连接而执行的请求排队

当我发送页面的HTML时,我尝试发送一个“Connection:Keep Alive”标题,但可能这还不够

有什么帮助吗

我知道有一些jQuery插件,比如lazy load,它们只在图像在视口中可见时才加载图像。这将是一个很好的“解决办法”,但我想知道是否有任何适当的方法来控制这种类型的图像加载


非常感谢。

Firebug很好地总结了这个问题。浏览器一次只能从一个域加载
x
数量的资源
x
通常约为8,但这可能因浏览器而异,也可能因用户的设置而改变。克服这一问题的唯一方法是让浏览器从不同的域(子域视为不同的域)下载资源,这将允许一次下载更多的资源。你可以通过使用.htaccess和mod_rewrite让你的图像从假子域下载,从而欺骗浏览器,使其认为它是从不同的域下载的,而这些子域实际上是从同一个域下载的。这将允许您一次下载比分配的资源更多的资源。

Firebug很好地总结了这个问题。浏览器一次只能从一个域加载
x
数量的资源
x
通常约为8,但这可能因浏览器而异,也可能因用户的设置而改变。克服这一问题的唯一方法是让浏览器从不同的域(子域视为不同的域)下载资源,这将允许一次下载更多的资源。你可以通过使用.htaccess和mod_rewrite让你的图像从假子域下载,从而欺骗浏览器,使其认为它是从不同的域下载的,而这些子域实际上是从同一个域下载的。这将允许您一次下载多于分配的资源。

您是否在该脚本中处理图像?是的,我将原始图像的大小(gdlib)调整为该特定“图像标签”中所需的格式。为了提高性能,我建议您在上载时处理图像,稍后再输出。因为图片上传一次,但显示几次。我知道,我通常在其他网站上这样做,但在这个特定的项目中,我需要在显示时间处理图片!您是否在该脚本中处理图像?是的,我将原始图像的大小(gdlib)调整为特定“图像标记”中所需的格式。为了提高性能,我建议您在上载时处理图像,稍后再输出。因为图片上传一次,但显示几次。我知道,我通常在其他网站上这样做,但在这个特定的项目中,我需要在显示时间处理图片!