1

由于某种原因,我在查看我的网站时发现了一个问题,即在浏览器中一次只能加载一个 php 页面。例如,如果我打开“PageA.php”然后打开“PageB.php”,“PageB.php”在“PageA.php”完成加载之前不会返回任何结果(显示正在加载..)。

我在 CentOS 上使用 Apache Httpd。有人能帮助我吗?

谢谢!!

4

1 回答 1

3

您可能正在使用基于文件的 PHP 会话,默认情况下,当特定脚本实例使用会话时会锁定会话文件。这将导致使用同一会话的脚本上的任何其他命中被锁定,直到第一个脚本完成。

如果您需要长时间运行的脚本和/或允许并行使用页面,则必须使用session_write_close().

如果您这样做,$_SESSION仍可用于读/写,但在脚本退出时将不再自动保存更改。但是,您可以稍后再做一次session_start()(假设没有执行任何输出)以“恢复”会话并再次启用自动保存行为。

于 2013-07-12T19:08:57.477 回答