这听起来很简单,但我有一个时间让它工作。 Apache期望我的脚本的第一行说#!<path_to_cmd_shell>而我不想使用Perl或其他任何东西,我想使用c:\windows\system32\cmd.exe但是没有去。
当我从cmd提示符运行cmd文件的其余部分时,它按预期工作。
我甚至有一个testingCGI这样做:
@echo off echo Content-Type: text/html echo. echo ^<html^>^<head^>^</head^>^<body^>hi from stu the cgi ^</body^>^</html^>
这是有效的。
但是当我改变脚本来运行另一个exe(其输出将是cgi响应)时,我得到了各种脚本头的过早结束。
我猜测,这与exe的输出没有回滚通过shell的输出有关。
任何想法如何使这个去?
我想你的猜测是正确的。 该exe文件可能写入屏幕,而不是stdout 。
原谅我这样说,如果我错了,但Apache知道如何执行一个CMD文件? 实质上,我希望你将不得不把脚本以可以理解的方式给予Apache。 也许你会有更多的运气试图让perl脚本执行CMD并以这种方式stream式输出,而不是试图直接执行CMD脚本。