运行 apache 服务器上的 exe 文件

run exe file on apache server

是否可以将 exe 文件放在 apache 服务器上,通过 php 形式发送文本文件,让 exe 处理文本文件,然后将结果发送回客户端?

或者这通常是不可能的(如果是,为什么)?

我环顾四周,但我还没有真正得到确凿的答案。有人说您应该将 exe 用作 cgi 脚本,有人说它只能在 windows 服务器上使用。

谢谢!

编辑

我的代码:

<!DOCTYPE html>

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<?php
echo exec('whoami');
echo exec("my.exe");
echo "<h1>Success</h1>";
?> 
</body>
</html>

在本地工作。这是否也适用于由网络空间公司托管的 apache 服务器? (前提是他们不禁止执行)。

Or is this generally not possible (if so, why)?

没有“generally”,这取决于您的主机提供商如何配置 apache。如果您有 vpsdedicated server,那么 "generally" 就是您想要的。


需要考虑的几点:

  1. 谨慎行事 并提供 完整路径 exe,即:

    exec("c:/someDir/my.exe");

  2. 使确定 apache 运行ning 下的用户具有权限 执行文件;

  3. 您可能已经知道,exe 文件 运行 在 windows 系统上,但 不 独家,如果您已 wine 安装,他们可以 运行 在 Linux 下;
  4. 考虑使用 shell_exec 而不是 exec,为什么? shell_exec returns 所有输出流作为字符串exec returns 最后一行 默认情况下的输出,但可以将所有输出作为数组提供 指定为第二个参数;