Windows10 CMD中设置环境变量后运行php-cgi的方法求助
在Windows 10 CMD中设置环境变量并运行php-cgi的正确方法
嘿,这个问题我太懂了!你大概率是用了Linux/bash里的写法(比如REDIRECT_STATUS=true REQUEST_METHOD=GET php-cgi),但Windows CMD的环境变量设置逻辑和Linux不一样,所以才会出现那个“不被识别”的错误。
错误原因
Windows CMD不支持在命令前直接拼接环境变量的语法,这种写法是bash/Linux shell的专属,CMD得用自己的set命令来设置临时环境变量。
具体解决方法
方法1:分步设置(适合需要多次调用php-cgi的场景)
先在当前CMD会话里设置两个临时环境变量,然后运行php-cgi:
- 设置第一个变量:
set REDIRECT_STATUS=true - 设置第二个变量:
set REQUEST_METHOD=GET - 运行php-cgi(如果php-cgi不在系统PATH里,要写全路径,比如
"C:\Program Files\PHP\php-cgi.exe"):php-cgi
这些变量只会在当前CMD窗口生效,关闭窗口后就会消失。
方法2:一行完成(适合单次调用的场景)
用&&把设置变量和运行命令串起来,一次执行:
set REDIRECT_STATUS=true && set REQUEST_METHOD=GET && php-cgi
方法3:临时隔离环境变量(避免影响后续命令)
如果不想让这两个变量留在当前CMD环境里,可以用setlocal和endlocal包裹,运行完后自动清除变量:
setlocal set REDIRECT_STATUS=true set REQUEST_METHOD=GET php-cgi endlocal
这样操作后,php-cgi就能正确读取到你设置的两个环境变量啦~
内容的提问来源于stack exchange,提问作者surge10
相关产品推荐
相关产品推荐

