我使用 Monodevelop 在 C# 中用我自己的服务器编写了一个 Web 应用程序。在我的计算机上,我编译并运行它没有任何问题。但是,我尝试将其部署在服务器上,并在使用 xbuild 成功编译 .sln 文件并运行 .exe 文件后,我得到:
“不能执行二进制文件。”
很明显 .exe 有 +x 标志。这是 uname 的结果:
unname -a
Linux xxxxx 3.10.19-2 #1 SMP Thu Nov 14 10:42:59 CET 2013 x86_64 Intel(R)_Xeon(R) CPU _ __ X7460 _@_2.66GHz PLD Linux
这是文件的结果
文件服务器.exe
Server.exe:PE32 可执行文件(控制台)Intel 80386 Mono/.Net 程序集,适用于 MS Windows
所以我在 64 位机器上运行了一个 32 位应用程序,应该没问题。“对于 MS Windows”非常令人不安,但在我的计算机上,文件命令给出了相同的输出。这是我电脑上 uname 的结果:
unname -a
Linux xxxxx 3.13.6-1-ARCH #1 SMP PREEMPT Fri Mar 7 22:30:23 CET 2014 i686 GNU/Linux
但是,.exe 文件不是 Unix 脚本。我可以在我的计算机上的 Wine 下运行它,但是服务器上没有 Wine。我该怎么做才能在服务器上运行我的应用程序?