在 Ubuntu 上启动简单的 php 守护进程


Launch simple php daemon on Ubuntu

我想在 Ubuntu 上启动简单的 php 守护进程,而无需 fork。

来源 f.php:

#!/usr/bin/php
<?php
file_put_contents('/var/www/3.txt',date("H:i:s", time()) . "'n", FILE_APPEND);
while (true) {
    file_put_contents('/var/www/3.txt',date("H:i:s", time()) . "'n", FILE_APPEND);
    sleep(1);
}

发射:

root@ubuntu:/var/www# ./f.php &
[3] 10323

在 FreeBSD 上,这在 Ubuntu 文件 3 上工作得很好.txt不会更新:(权限正常 (777)

你能检查你指向的PHP二进制文件的路径是否正确吗,我的意思是PHP真的安装在/usr/bin/php中,你可以使用以下命令进行检查

which php

您也可以尝试手动运行它,而不是通过以下命令将其作为可执行文件运行

php -f f.php &

并检查您的PHP文件是否在Apache日志中给出任何错误,您可以在/var/log/apache2/error.log中找到Apache日志

并通过执行以下命令确保安装了php5-cli

apt-get install php5-cli

更新:

根据 http://www.freelance-it-consultant.com/blog/php-cli-script-running-background-ubuntu 的说法,当 PHP 通过 CLI 运行时,ubuntu 中存在一些错误,它需要用户的一些输入,所以如果适合你,你可以试试这种方法吗?

php -q f.php < /dev/null &