Php 如何自动刷新出错的HTML页面?
我有个奇怪的问题。 我有一个php脚本,它只在我们的Web服务器上运行,一旦在数据库中放入新的处理作业,它就会处理大量数据。 处理大约需要1-5分钟 我所做的是运行一个php脚本,检查数据库中是否有未完成的作业,该页面使用以下html标题每5秒刷新一次:Php 如何自动刷新出错的HTML页面?,php,javascript,html,ajax,refresh,Php,Javascript,Html,Ajax,Refresh,我有个奇怪的问题。 我有一个php脚本,它只在我们的Web服务器上运行,一旦在数据库中放入新的处理作业,它就会处理大量数据。 处理大约需要1-5分钟 我所做的是运行一个php脚本,检查数据库中是否有未完成的作业,该页面使用以下html标题每5秒刷新一次: <meta http-equiv="refresh" content="5"> 服务器只是运行此脚本,以便自动获取它。 问题是:有时,当服务器繁忙时,它会抛出一个内部错误500。这意味着页面停止加载,将不再刷新(即使几秒钟后它
<meta http-equiv="refresh" content="5">
服务器只是运行此脚本,以便自动获取它。
问题是:有时,当服务器繁忙时,它会抛出一个内部错误500。这意味着页面停止加载,将不再刷新(即使几秒钟后它将再次可用)
我怎样才能最好地解决这个问题?
我考虑过让Ajax使用他们的轮询系统来完成这项工作,问题是一个处理作业需要几分钟的时间,如果碰巧同时有几个处理作业,它将同时开始执行所有这些作业,这是我们不希望看到的。我甚至不知道当Ajax再次开始刷新时,加载页面是否会停止,从而无法完成脚本
如果在数据库中创建新作业时有其他方法可以运行PHP脚本,我也想知道。使用
cron
运行脚本。不要通过web浏览器运行它。甚至不要在web服务器上运行它。哦,对了,忘了说:这是一个执行处理的windows web服务器(因为它使用Win32可执行文件进行处理,所以我在处理服务器上使用IIS,它没有cron,只有windows任务调度程序),然后使用windows任务调度程序,或者安装cron(或者移动到类似UNIX的服务器上).你让我找到了正确的答案。我所做的是在一个无休止的循环中创建一个批处理文件,调用php来运行页面本身,如果页面失败,它将在间隔时间过后再次重复。我会把它放到任务调度程序中,它会工作的!