我有一台运行apache
的windows pc,并且我需要一个php
脚本来连续运行以收听来自UDP port
的输入,并采取所需的操作并将其发送回去。在我的服务器上运行一个循环的PHP脚本
我知道如何做到这一点的唯一方法是为cmd
安装curl
,然后运行php script
并使用WHILE loop
。我担心的是,这是做错的方式,并且可能不可靠并占用大量的系统资源。
人们可以评论上述方法吗?我听说过cron ..但那只适用于unix?我能做什么?
我有一台运行apache
的windows pc,并且我需要一个php
脚本来连续运行以收听来自UDP port
的输入,并采取所需的操作并将其发送回去。在我的服务器上运行一个循环的PHP脚本
我知道如何做到这一点的唯一方法是为cmd
安装curl
,然后运行php script
并使用WHILE loop
。我担心的是,这是做错的方式,并且可能不可靠并占用大量的系统资源。
人们可以评论上述方法吗?我听说过cron ..但那只适用于unix?我能做什么?
嘿试试下面的解决方案。 使用bat文件并计划执行该bat文件。
例如在bat文件executephp.bat
,写这
c:\xampp\php\php.exe -f c:\xampp\htdocs\do_something.php
保存包含行bat文件。
转到Windows调度程序,并创建一个新的任务,并在操作选项卡中,浏览指向该executephp.bat和开始 - >直接到目录你有executephp.bat。
例如如果u将文件保存C:\xampp\htdocs
下提出,在开始C:\xampp\htdocs
英寸
记住调用即使不登录的用户脚本。
一切都设置好了,它会毫无问题地执行。
我有一个问题。有没有一种方法可以调用打开的文件?用另一个系统的url链接说。一旦用户调用它,它会以某种方式执行批处理文件..? – raaj 2013-02-18 04:02:47
我不知道在那... – 2013-02-18 04:26:32
Apache后面的PHP脚本始终有最大执行时间,因此应该在特定的超时后总是停止使用循环。
您应该更好地使用cron或像Venkat这样的批处理脚本。有一些很棒的cron服务,它会向服务器发出GET请求并运行脚本。看看这个相关的线程:Scheduled Request to my website from an external source
这不符合您的需求?
任何想法它持续多久?我总是可以计时并重新打开它,但我想知道它持续多久无论如何 – raaj 2013-02-18 04:00:59
在这里看一下PHP中的['max-execution-time'](http://www.php.net/manual/en/info.configuration.php#ini.max-execution-time),它默认是30秒,对于Apache来说:''Apache有一个Timeout指令,IIS有一个CGI超时函数,默认为300秒。“' – ConcurrentHashMap 2013-02-18 18:55:38
我听说这可以用Windows任务调度程序完成?但是这不允许你说每分钟都运行脚本。最糟糕的情况是,我必须在C#中编写我自己的调度应用程序:( – raaj 2013-02-17 18:15:05