【发布时间】:2016-05-25 08:15:54
【问题描述】:
我安装了 AMPPS。
我的 Apache 服务器无法同时处理多个 php 请求(例如,如果我多次调用 localhost/script.php,它们将按连续顺序处理)。 script.php 仅包含 <?php sleep(10); ?>。
我读到MaxClients 指令负责并发访问配置,但我的httpd.conf 中根本没有它。
禁用 Xdebug 并将 session_write_close(); 写入脚本开头不起作用。
当我在文件开头添加session_start(); 时,我的代码如下所示:
<?php
session_start();
session_write_close();
sleep(10);
phpinfo();
echo "Done";
当向localhost/script.php发出5个请求时,最后4个等待第一个结束,然后并发结束。
请帮我解决问题。如果缺少帮助我解决此问题所需的任何信息,请通知我,我会添加它。
【问题讨论】:
-
session_write_close()应该防止与会话相关的等待,但是...是否需要会话才能重现该问题?或者,换句话说,如果您删除session_start(),它会按预期工作吗?您的问题表明根本不需要会话,但我想知道您为什么提到。 -
没有
session_start()代码根本不会并发执行,请求一次处理一个。使用session_start(),先处理第一个请求,然后并发执行其余请求。 -
我提到它们是因为有人认为这可能是与会话相关的问题。
-
你能解决这个问题吗?好像我有类似的问题。我将 php 7 与(xampp 3.2.2)一起使用。