使用php重新启动pc
是否可以使用php重新启动电脑?您可以使用类似于使用php重新启动pc,php,Php,是否可以使用php重新启动电脑?您可以使用类似于exec()或system()的方法来运行系统命令以重新启动计算机。通常,您需要超级用户权限才能重新启动计算机。但作为超级用户运行web服务器是一种不好的做法。我建议进行一些进程间通信。例如。PHP脚本在文件中写入密钥,然后cron作业读取该文件并重新启动计算机 我不确定通过网络重启电脑是否是个好主意。为什么要这样做?确实可以使用exec()或system(),但是权限将是问题,因为PHP是在运行apache的用户上运行的 作为一种快速解决方法,用
exec()
或system()
的方法来运行系统命令以重新启动计算机。通常,您需要超级用户权限才能重新启动计算机。但作为超级用户运行web服务器是一种不好的做法。我建议进行一些进程间通信。例如。PHP脚本在文件中写入密钥,然后cron作业读取该文件并重新启动计算机
我不确定通过网络重启电脑是否是个好主意。为什么要这样做?确实可以使用
exec()
或system()
,但是权限将是问题,因为PHP是在运行apache
的用户上运行的
作为一种快速解决方法,用户apache可能被授予重新启动的权限。根据您的系统,设置此选项可能相当困难
另一种方法是让Cron任务(属于root)每隔分钟(或几秒钟)检查一次文件,并让PHP程序编辑该文件。该文件设置为只能由Apache编辑。这要容易得多
希望这有帮助。这个答案适用于基于linux的服务器 危险:从php使用system(),在系统中,使用“sudo shutdown-r now”重新启动,使用“sudo shutdown-h now”关闭 在/etc/sudoers中,为apache用户添加运行shutdown的权限 一个问题是sudo可以提示输入密码 删除apache用户的密码(但不要运行sshd、telnetd、ftpd等),或者查看/etc/sudoers是否具有无密码配置。关于第200行和第270行的“man sudoers”说,Tag_Spec可以包含NOPASSWD,以指定用户不必使用密码重新验证就可以运行sudo命令
更安全:token/cron让php在某个地方写一个文件。编写一个由cron以root用户身份运行的脚本,这样,如果该文件存在,则删除该文件,然后运行关机或重新启动。在我们的系统中,我们执行Paul告诉我们的操作
我同样需要运行Debian/Lenny的CarPC设置。我将inetd配置为每当连接到该服务的端口时运行/sbin/reboot 然后我让一个PHP脚本对localhost/端口执行一个fsockopen(),它会立即重新启动 快速设置(debian-针对您的系统进行修改): 在
/etc/services
中添加一行“reboot 88/tcp”
(或任何您想要的端口)
在/etc/inetd.conf
中添加一行“重新启动流tcp nowait root/sbin/reboot”
使用/etc/init.d/openbsd-inetd Restart重新启动inetd
现在连接到localhost:88,它将重新启动系统
如果您的系统运行xinetd,您可以将其配置为只接受来自localhost的连接,以稍微加强安全性。无论如何,这仍然是一种黑客行为 我希望你指的是服务器,而不是浏览器的机器。一些服务器管理工具,如Plesk允许这样做。