我正在尝试设置一个朋友的Windows 7计算机来运行Nginx& PHP5。我找到了一个在线脚本来启动和停止Nginx& PHP,在添加目录更改行后,我能够使其工作。但是,似乎有一个问题导致它离开启动PHP打开的第二个控制台窗口。有没有办法让控制台窗口关闭?
批处理脚本:
@ECHO OFF
CD C:\nginx
tasklist /FI "IMAGENAME eq nginx.exe" | find /I "nginx.exe" > NUL && (
GOTO STOP
) || (
GOTO START
)
:START
ECHO Starting nginx
start nginx
ECHO Starting PHP
start php\php-cgi.exe -b 127.0.0.1:9000 -c c:\nginx\php\php.ini
GOTO DONE
:STOP
ECHO Stopping nginx
start nginx -s quit
ECHO Stopping PHP
taskkill /f /IM php-cgi.exe
:DONE
TIMEOUT 3
答案 0 :(得分:5)
您可以使用START
上的/b parameter启动应用程序而无需打开另一个cmd窗口
START /b php\php-cgi.exe -b 127.0.0.1:9000 -c c:\nginx\php\php.ini
<强>更新强>
看来这是php-cgi.exe的行为。有关完整的故事和解决方法,请参阅此文章。 http://wiki.nginx.org/PHPFastCGIOnWindows
启动后,php-cgi.exe将继续侦听连接 在命令提示符窗口中。要隐藏该窗口,请使用tiny实用程序 RunHiddenConsole
基本上,您只需要d / l并将RunHiddenConsole解压缩到您的nginx目录,然后将此行更改为:
RunHiddenConsole.exe php\php-cgi.exe -b 127.0.0.1:9000 -c c:\nginx\php\php.ini
答案 1 :(得分:1)
您正在寻找
start php\php-cgi.exe -b 127.0.0.1:9000 -c c:\nginx\php\php.ini
/exit b
答案 2 :(得分:0)
要运行.BAT Invisible,您可以使用简单的vbs脚本。
将它放在.VBS文件中:
CreateObject("Wscript.Shell").Run """" & WScript.Arguments(0) & """", 0, False
然后像这样运行你的BAT:
wscript.exe "C:\invisible.vbs" "C:\YourBat.bat"