原因可能有三个:
1. 首先确定启动路径上没有中文
2. 其次是确保 nginx 使用的端口未被占用
我们可以在 conf 文件中找到 nginx.conf 其中找到下图中的配置进行查看默认端口, 然后查看该端口是否被占用, 被占用可以将其释放, 如果不能够释放我们可以将 nginx 端口修改为一个空端口
3. 采用上述问题方法后都未解决问题, 查看 logs 输出情况后发现报错:
"D:\javacode\Takeaway\nginx-1.20.2/temp/client_body_temp" failed (3: The system cannot find the path specified)
原因是 nginx.conf 配置文件中没有指定 client_body_temp_path, 默认情况下, Nginx 会尝试在 nginx-1.20.2/temp/client_body_temp 目录下创建临时文件, 但该目录不存在,导致错误。
我们可以手动创建 temp 文件来解决(前面路径换成自己的):
mkdir D:\javacode\Takeaway\nginx-1.20.2\temp\client_body_temp
或者在 http 配置块内加上: client_body_temp_path temp/client_body_temp;
Nginx 的常见命令:
开启: start nginx 或者 直接双击 exe 文件
关闭: nginx -s stop
不关闭重启: nginx -s reload
但是在 windows 关闭命令可能会出现问题 这时我们可以使用: ./nginx -s stop