2 u011693808 u011693808 于 2013.12.02 16:06 提问

php如何让程序后台运行

下面的代码是先让别人手机的能够访问网络,但是我想通过nohup在60分钟后将防火墙内的记录删除,以达到别人每60分钟必须重新连接一次网络。
<?php
$iipp=$_SERVER["REMOTE_ADDR"];
exec ("iptables -t nat -I PREROUTING -s $iipp -j ACCEPT");
exec ("nohup sleep 60m >/dev/null 2>&1 &");
exec ("nohup iptables -t nat -D PREROUTING -s $iipp -j ACCEPT > /dev/null 2>&1 &");
?>

但是现在的问题是,nohup没有起作用,防火墙不能再制定时间后自动删除记录,我现在是个小菜鸟,求各路大神帮帮忙啊!小弟感激不尽啊!

3个回答

godamen
godamen   2013.12.03 17:33

你可用php将需何时去除的时间写入一个文件如:
/htdocs/ipout.log
17:58 192.168.0.22

crontab 每分钟运行一个脚本去读这个文件来判断是否需去除这个ip

  • * * * * cd /opt/shell && /bin/sh ./ip.sh > /dev/null 2>&1

ip.sh
如果时间相同则执行去除操作

u013078299
u013078299   2013.12.08 00:03

你可用php将需何时去除的时间写入一个文件如:
/htdocs/ipout.log
17:58 192.168.0.22
crontab 每分钟运行一个脚本去读这个文件来判断是否需去除这个ip

  • * * * cd /opt/shell && /bin/sh ./ip.sh > /dev/null 2>&1 ip.sh 如果时间相同则执行去除操作
godamen
godamen 什么情况?就这么抄我的回答...
大约 4 年之前 回复
u013025561
u013025561   2013.12.02 22:48

确保防火墙已关才行,推掉杀毒软件记得,试试看

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!