php - 使用 PHP (Apache) 启动 Linux 应用程序,并具有某些命令的 root 权限

标签 php linux apache node.js

我正在运行多个 Node 实例,它们都在不同的端口上运行。

我需要一种方法来根据运行的端口杀死特定的 Node 实例(杀死绑定(bind)到端口 n 的 Node 实例)。

从我的终端,我可以轻松地执行“fuser -k xxxx/tcp”xxxx 作为端口。

问题是,那是因为我有权这样做。我的问题是:我希望能够有一个 PHP 文件来关闭在端口 n 上运行的 Node 实例,并且任何人都可以打开它。如何在不造成巨大安全漏洞的情况下做到这一点?

谢谢!

最佳答案

您可以考虑向服务器添加一个端点,例如 /shutdown,它将调用 process.exit();

结果是立竿见影的,比使用一堆 shell 命令、跟踪 pid 等更容易实现......

还可以通过密码、签名请求等轻松保护。

关于php - 使用 PHP (Apache) 启动 Linux 应用程序,并具有某些命令的 root 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15167396/

相关文章:

php - 使用 jquery 的 .post 上传文件

php - 我的 sql 语法中有一个错误,用于通过 post 将值从 arduino 导入到 php 脚本,该脚本应该将它们发送到我的 mysql 表

linux - 哪个系统可以调用 "Embedded Linux based"?

html - 如何设置 CSS、JS 和图像的过期时间?

c++ - 在 FastCGI 和 Octave 中重新定义标准输出

php - 如何创建一个接受字符串并执行数据库操作的php Web服务

php - 像Web门户那样的ebay之类的API接口(interface)

python - django-debug-toolbar 出现,但为空(面板未填充)

python - 使用 7zip 和 python 在给定路径中创建受密码保护的文件

linux - 检查平衡字符不起作用