Php 启动在服务器上运行的程序
我正在尝试创建一个php文件,该文件在我的服务器上一直运行,每秒钟检查一次收件箱中是否有更改 为此,我编写了一个while循环,如下所示:Php 启动在服务器上运行的程序,php,Php,我正在尝试创建一个php文件,该文件在我的服务器上一直运行,每秒钟检查一次收件箱中是否有更改 为此,我编写了一个while循环,如下所示: /folder1/page/test.php: session_start(); while (true){ set_time_limit(0); date_default_timezone_set('Europe/Madrid'); require_once ('./folder1/path.php');
/folder1/page/test.php:
session_start();
while (true){
set_time_limit(0);
date_default_timezone_set('Europe/Madrid');
require_once ('./folder1/path.php');
require_once ( CLASSES . 'Builder.php');
$UIModules = Builder::getUIModules();
$current_items = $UIModules->getfile();
sleep(1);
}
因此,在SSH中,我使用php5.4启动文件,如图所示/usr/bin/php5.4/kunden/homepages/31/d466491669/htdocs/folder1/page/test.php
它返回了这个错误:“没有指定输入文件”。我试图通过添加一个包含这3行的.htaccess文件来解决这个问题,但仍然存在相同的问题:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
在开始的问题之后,我还想问一下是否可以在我的根上调用cron.php,如下所示:
while (true){
set_time_limit(0);
if (strpos( __DIR__ ,'d466491669') == true)
require_once ('./folder1/page/test.inc.php');
else
require_once (__DIR__ . './page/test.inc.php');
}
因此,当您以CLI(命令行界面)运行php时,我可以删除test.php上的循环,这与通过apache/nginex/others\u web\u服务器从浏览器运行完全不同
您可以通过phpinfo()查看它两个被调用方上的代码>
下面是一些解释的链接
另外,如果您想通过cron运行php,那么请记住每次cron工作时都会运行它——所以如果您将cron作业设置为每2分钟执行一次。每隔两分钟,test.php文件将由php5.4-f test.php运行一次。您需要在其中添加一些故障保护功能—比如锁定文件或任何东西,以了解cron作业的最后一个副本是否仍在工作—如果是-退出-,如果不是-,则工作
信息:.htaccess被php cli完全忽略。它仅在通过apache或其他服务器应用程序而不是命令行界面发出请求时使用。更好的是,此接口有自己的php.ini
文件,其设置与、、普通“”配置文件略有不同