跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • PHP 后台运行,求大佬
未分類
21 2 月 2021

PHP 后台运行,求大佬

PHP 后台运行,求大佬

資深大佬 : PHPYgod 2

环境: 宝塔 LAMP apache Timeout:600
上代码,百度上 COPY 的
<?php
ignore_user_abort(true);
set_time_limit(60);
ob_end_clean(); //清除之前的缓冲内容,这是必需的
header(“Connection: close”); //告诉浏览器,连接关闭了,这样浏览器就不用等待服务器的响应
header(“HTTP/1.1 200 OK”); //可以发送 200 状态码,以这些请求是成功的,要不然可能浏览器会重试
ob_start();#开始当前代码缓冲
header(“Content-type:text/html;charset=utf-8”);
echo “running,,,,.”;
$size=ob_get_length();
header(“Content-Length: $size”);
ob_end_flush();#输出当前缓冲
flush();#输出 PHP 缓冲
while(!file_exists(‘close.txt’)){//只有不存在 close.txt 就一直运行
$fp = fopen(‘log.txt’,’a+’);
fwrite($fp,date(“H:i:s”) . ” rn”);
fclose($fp);
sleep(10);
}
?>
浏览器访问是 等待响应直到 60S 后 503 网站也没有 log.txt 文件

求大佬指点。。。。。。。

大佬有話說 (6)

  • 資深大佬 : 815979670

    可以考虑使用定时任务去触发 cli 没有超时的问题

  • 資深大佬 : liuxu

    小兄弟你不要胡说,明明就有 log.txt ,你肯定是找错目录了

    PHP 后台运行,求大佬

  • 資深大佬 : simapple

    检查 close.txt ,写入 log.txt ? 文件名的问题?

  • 資深大佬 : NjcyNzMzNDQ3

    后台运行就别用 LAMP 的 PHP-FPM 模式,如果还想用就 shel_exec(“php -i”) 来调用 php 的 cli 方式。
    或者同#1 一样定时调用。

  • 主 資深大佬 : PHPYgod

    @liuxu 嗯,有 log.txt 但是 set_time_limit(600); log.txt 内也只有 2 分钟的记录,无法长时间运行!

  • 資深大佬 : awanganddong

    在浏览器里边,是通过 php-fpm 来执行的,属于请求响应模式,没有常驻内存。
    一般 php-fpm 设置有超时时间,超时就会报 nginx 错误。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具