我正在使用 AMP 服务器(Apache 1.3、MySQL 5.0、PHP 5.1.5),我发现它一次只允许每个浏览器 1 个连接/请求。重现这种情况的最简单方法是请求通过 PHP 传递的大型下载,并尝试同时访问另一个页面。您最终将等待第一个请求(文件下载)在其他页面加载之前完成。
我不确定问题是 Apache、MySQL 还是 PHP。我应该从哪里开始寻找任何想法?
我可以通过同一台计算机上的其他浏览器发出其他请求。
我正在使用 AMP 服务器(Apache 1.3、MySQL 5.0、PHP 5.1.5),我发现它一次只允许每个浏览器 1 个连接/请求。重现这种情况的最简单方法是请求通过 PHP 传递的大型下载,并尝试同时访问另一个页面。您最终将等待第一个请求(文件下载)在其他页面加载之前完成。
我不确定问题是 Apache、MySQL 还是 PHP。我应该从哪里开始寻找任何想法?
我可以通过同一台计算机上的其他浏览器发出其他请求。
如果您使用的是 PHP 会话,那么这可能是由会话文件被锁定引起的。为了防止会话文件被同时写入损坏,每个会话一次只能运行一个脚本。这意味着后续请求必须等到第一个请求结束。
脚本终止时会自动编写会话,但您可以通过调用session_write_close()
. 如果您正在编写一个需要一段时间才能运行的脚本,那么明智的做法是在您不再需要访问会话数据时立即调用它。
这里的文档中有一些对此的解释
我会开始查看 apache 配置。MaxClients 可能设置为 1?