Cron在Ubuntu上为php工作

前端之家收集整理的这篇文章主要介绍了Cron在Ubuntu上为php工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在服务器上使用Ubuntu而我正在使用Putty访问.我想为我的PHP网站创建cronjobs.我怎样才能做到这一点?
如果你的意思是你希望你的PHP站点做一些常规任务,有两种可能的方法.

1)您使用cron定期拉出某个页面.您可以使用基于文本的浏览器执行此操作,例如猞猁.你像这样拉你的脚本:

* * * * * /usr/bin/lynx http://yourhost.com/cron.PHP -dump>的/ dev / null的

(这将每分钟调用一次.这样你就可以在你的应用程序中建立自己的时间表)

2)使用命令行PHP interpreter调用脚本:

* * * * * /usr/bin/PHP /path/to/cron.PHP\u0026gt;的/ dev / null的

通常解决方案二更好.但是,您需要访问该框.如果您无法在主机上安装crons,则可以从不同的主机触发解决方案一中的cron.

还要注意使用命令行版本的PHP的常见陷阱.在debian(以及可能的其他系统)上,可能存在用于cgi,cli和mod_PHP的单独的PHP.ini文件.如果您已自定义配置,请确保命令行PHP使用正确的配置.您可以使用以下方法测试:

/usr/bin/PHP -i |减

为了回应dimo的评论,我做了一些基准测试.我用lynx,wget和PHP-cli调用了一个简单的本地PHP脚本(只是echos“test”)1000次:

kbsilver:temp kbeyer$time . wget.sh

 real 0m14.223s
 user 0m2.906s 
 sys 0m6.335s

(Command: wget -O /dev/null "localhost/test.PHP"; 2> /dev/null) 

kbsilver:temp kbeyer$time . lynx.sh 

real 0m26.511s 
user 0m5.789s 
sys 0m9.467s 

(Command: lynx -dump "localhost/test.PHP"; > /dev/null) 




kbsilver:temp kbeyer$time . PHP_cli.sh 

real 0m54.617s 
user 0m28.704s 
sys 0m18.403s 

(Command: /opt/local/bin/PHP /www/htdocs/test.PHP > /dev/null)

服务器是lighttpd,PHP(fastcgi)和apc(在Mac OS X上).

事实证明,确实wget是速度工作的最佳工具.

因此,PHP-cli的结果并不令人惊讶,因为其他方法重用已经运行的带有操作码缓存的PHP线程.

所以使用PHP-cli的唯一真正优势是安全性,因为脚本不能从外部获得,因为你可以把它放在docroot之外.

(这个测试显然不是100%准确,但在我看来差异非常明显)

猜你在找的Ubuntu相关文章