我在Cygwin上运行Lighttpd。我有一个调用notepad.exe的BASH脚本的Lua CGI脚本。我的实际问题是运行一个C#应用程序,但我现在试图用记事本简化问题。Cygwin上的Lighttpd从Cygwin shell中有不同的PATH变量
当我调用CGI网页时,出现错误:notepad.exe:command not found 但是,当我从Cygwin shell运行BASH时,记事本运行正常,没有错误。
看起来像lighttpd运行时正在清理路径。我如何确保环境相同?
CGI(LUA):
#!/usr/bin/lua
cmd = "/opt/abc/scripts/test.sh"
local f = io.popen(cmd.." ; echo RC=$?")
assert(f)
local str = f:read'*a'
f:close()
print ("Content-type: Text/html\n")
print ("<br><b>Output</b>: ", str)
print ("</body></html>")
BASH:
#!/bin/sh
echo "Test.sh"
echo "<br>PATH<br> $PATH<hr>"
notepad.exe 2>&1
这没有帮助。我手动添加路径和记事本不'显示'。它显示在任务管理器中,但GUI窗口不显示。 – tuxGurl 2011-05-02 17:11:26
@tuxGurl lighttpd是作为服务运行还是作为普通香草应用程序在窗口中运行?如果它的服务 - 您是否启用了与桌面交互的功能? – nhed 2011-05-05 13:30:57