【发布时间】:2013-08-30 03:00:14
【问题描述】:
我目前遇到了一个我无法在线解决的问题。我尝试了两种不同的操作系统,并且都有相同的困难。一个是 Ubuntu,另一个是 OSx。
现在的问题是,对于这个示例,每分钟运行一次 cron 来访问 .php 文件,这反过来将 .txt 文件中找到的值的计数增加 1。
在 .php 文件的开头我有:
#!/usr/bin/php
我也尝试在末尾添加 quiet 标签。这并没有导致 cron 工作。
cron命令如下:
- php /var/www/cron/index.php >/dev/null 2>&1
在 CRON 下的 syslog 中找到的输出是:
(用户) CMD (php /var/www/cron/index.php >/dev/null 2>&1)
没有错误。 如果我按照给出的命令运行该命令。 .txt 中的计数加 1。但没有任何东西可以说明为什么 cron 不允许这种情况发生。
对不起这篇文章。任何建议将不胜感激。
【问题讨论】:
-
假设
/var/www/cron/index.php是普通的PHP 文件,尝试:* * * * * /usr/bin/php -f /var/www/cron/index.php > /var/www/cron/index_output.txt并让我知道您是否真的在index_output.txt中有任何输出。为了测试,您可以将<?php echo 'test ';放入index.php以查看它是否有效。还要先创建index_output.txt并将其设为0777,这样我们就可以确定这与权限无关。 -
感谢迈克尔的快速回复。我测试了你的建议。 index_output.txt 实际上每分钟都增加 1。但是初始文件 text.txt 保持不变。此外,如果我通过浏览器或仅 php /var/www/cron/index.php 运行 php 文件,则 text.txt 文件会增加。
-
这让我看起来很傻。看到相关问题后。有一个错过了我的注意。我浏览了它,发现一条评论指出,在 cron'ed 文件中链接的文件必须是绝对路径。实施这个解决了这个问题!感谢 Michal Prajsnar 的建议。
-
因为我是新海报。我自己无法回答这个问题。
-
您能否编辑您的问题并发布您的
index.php代码或只是其中text.txt递增和保存的部分?编辑:好的,那就解决了。 GL :)