-1

几个月前,我在 Windows 上的 Visual Studio 中编写了这个 c++ 代码。我从该代码制作 .exe 文件,一切正常。现在我尝试在 Linux 上做同样的事情,以便我可以将可执行文件放在 Linux Web 服务器上。如果从控制台调用,我的 linux 可执行文件可以工作。但我无法通过浏览器运行可执行文件。这在 xampp windows 上对我有用:

<?php
$imagename = $_GET['imagename'];
exec('inpainting.exe' .$imagename); 
echo "<img src=\"./images/img-uploads/ob_img$imagename.jpg\" />";
?>

如何在 xampp linux 上运行它?我为 linux 制作了新的执行文件,该文件的名称只是inpainting_linux

4

1 回答 1

2

您缺少空间:

exec('inpainting.exe'.$imagename);  
                    ^-- here

这意味着给定一个查询字符串 (say) kittens.jpg,您将执行:

inpainting.exekittens.jpg
             ^^---note lack of space

这几乎绝对保证会产生“没有这样的文件或命令”错误。

并注意我上面的评论。您绝对希望使用此代码远程销毁您的服务器或至少 pwn3d 不要在可公开访问的服务器运行此代码。或者更好的是,把代码拿出来烧掉。

于 2012-12-28T16:02:19.443 回答