日期:2014-05-17  浏览次数:20437 次

linux系统 nohup的问题
我想持续运行一个PHP程序,用到这个命令 nohup /data/www/wwwroot/military/server.php &
但是老是报这个错误:
nohup: appending output to “nohup.out”
nohup: cannot run command “/data/www/wwwroot/military/server.php”: 没有那个文件或目录
我可以确定路径肯定没问题,有这个文件和目录!
这个到底是哪的问题,求大神帮帮忙!!!
php linux nohup

------解决方案--------------------
php文件又不是可执行文件,当然会报错了,
nohup php -f /data/www/wwwroot/military/server.php >/dev/null &
------解决方案--------------------
跟nohup无关。

/data/www/wwwroot/military/server.php不能直接运行,前面要加上php可执行文件的路径,/data/www/wwwroot/military/server.php作为参数传给php可执行文件。比如/usr/bin/php,具体的要根据你自己php的安装位置而定。

nohup /usr/bin/php /data/www/wwwroot/military/server.php



或者在你的server.php的第一行加入shebang注释并授予server.php可执行权限。

#! /usr/bin/php
<?php
...
?>

#chmod +x /data/www/wwwroot/military/server.php

nohup /data/www/wwwroot/military/server.php就可以直接执行了。




用了nohup就不用再&了,&等同于bg命令的效果。