0

我的情况是我有一个 php 文件/root/test.php。我像这样设置我的root的crontab

* * * * * /usr/local/bin/php /root/test.php

test.php 的内容用于为 postfix 生成别名数据库,如下所示:

<?php echo shell_exec("postaliases hash:/etc/aliases"); >

我知道 test.php 由 crontab 成功运行。但是里面的 shell_exec 似乎不起作用(我在 /etc/ 下找不到我的目标 aliases.db 文件)。我已经测试过php -f test.php直接使用推荐是有效的。

我知道情况有点复杂。但是,如果有人可以解决我的问题,我将非常感谢您的帮助。

4

1 回答 1

1
  1. 使用 postaliases 的完整路径。很可能它不在执行脚本的用户的路径中

  2. 为什么要使用 php 脚本来调用 shell?只需使用 shellscript

于 2012-11-11T13:12:38.593 回答