Cron Jobs 執行php程序,但卻無法執行?直接訪問卻可以?
請問一下 我用了一個php程序 然後是利用Cron Jobs去固定時間執行
裡面其中有個程序是INSERT INTO數據到mysql確認是否有執行上述php程序
所以只要是有執行,就會INSERT進去 (所以有沒有成功我會知道)
但是很怪異的是
為什麼用Cron Jobs執行這個php程序時
上述的php程序沒有做到
但是卻有 INSERT數據進mysql?
他完全跳過了某段程序?
我那個程序是備份mysql,然後再某目錄產生.sql檔案,類似這樣:
$filename="".date("Y-m-d-H:i",time())."_auto-backup.sql";
$fp = fopen('sql/auto/'.$filename.'','w');
fputs($fp,$mysql);
fclose($fp);
更怪異的是
我直接key url去直接訪問該php卻是成功的!的確有產生sql檔案.....
但是為什麼用Cron Jobs替我執行卻不行?完全跳過這個程序........
再請問一下....要如何調整Cron Jobs的時間?我現在設定每天執行兩次(每12小時執行一次),但我的理想是中午12點與凌晨12點,他現在執行時間是下午三點跟凌晨三點....
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
py脚本在crontab中无法运行
你可以我的这边博客。解决方法应该是:
cron里的路径用绝对路径试试,即从/开始
直接执行可以,是因为有很多环境变量的配置可以用,当你使用cron的时候,这些环境变量的配置都被屏蔽了,所以要从根目录开始写。当然,如果你的程序明确指明了当前执行的目录时,后面的代码也可以使用一些相对路径。不过总的来说,还是全部绝对路径比较靠谱