dragon188199 2015-08-23 05:13
浏览 73
已采纳

无法从cron运行php脚本

I am running LAMP system on ubuntu 14.04. I have an rss feed using php which runs every 1 hour and MySQL stores data. My php file used to run perfectly using php in cron some 15 days but its not working anymore

My cron is as below

0 * * * *  /usr/bin/php /var/www/html/rss.php >/dev/null

My php script is working perfectly from browser(firefox/chrome)

When I run the php script using wget in cron it works fine

0 * * * *  wget http://www.mywebsite.com/rss.php >/dev/null
  • 写回答

1条回答 默认 最新

  • duanlu7680 2015-08-23 14:13
    关注

    Your script is using relatives pathes.

    When you open this script in a browser it tries to find files in /var/www/html/.

    When you do it in the cron it tries to find files in /.

    Put this in the beginning of your script:

    define('ROOT', dirname(__FILE__) . DIRECTORY_SEPARATOR);
    

    Now change every relative include or opener:

    include ROOT . "db.php"
    

    ...

        if (($handle = fopen(ROOT . "tbcatlist.csv", "r")) !== FALSE)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services