windows server 2019 启动 nginx 报错

环境 :windows server 2019 ,nginx-1.19.7

背景:

  1. 自己经常用这个 nginx 包作为 web 服务器。今天发现 部署到 server 2019 上直接报错了。
  2. 这可是原生的包,我啥也没改,怎么可能报错。而且之前在 其他服务器用都没问题。
  3. 特意检查了路径不能是带中文等特殊字符,发现也ok。

这就奇怪了?

分析:查看logs 目录下 error.log ,将最后的报错贴上来,以警后人:

复制代码
nginx启动报错:unknown directive " " in D:\common\nginx\conf\nginx.conf:3

网上查了下,感谢这个博主:

nginx启动报错:unknown directive " " in D:\nginx\conf\nginx.conf:3_unknown directive "user nginx-CSDN博客文章浏览阅读936次。在尝试使用Nginx部署前端项目时,由于使用记事本以UTF-8带BOM格式保存了nginx.conf配置文件,导致启动时出现unknowndirective错误。解决方案是使用不带BOM的UTF-8编码编辑器重新保存conf文件。完成修改后,Nginx成功启动。https://blog.csdn.net/shunhua19881987/article/details/125255452

我将具体原因和解决方法贴上来:

用Nginx部署一个前端项目,用记事本修改了nginx\conf\nginx.conf 文件的相关配置并保存,居然启动时报错:unknown directive " " in D:\nginx\conf\nginx.conf:1

原因:

是编码问题。 conf文件被记事本编辑过,保存成了含BOM编码的文件。

注:记事本编辑UTF-8都会自动加BOM头

解决方法:

使用其他编辑器(不能是记事本)将conf文件另存为UTF-8编码不含Bom的格式。

修改完成后,Nginx成功启动。

相关推荐
sondx3 分钟前
mac安装浏览器闪退处理
运维·docker·容器
Liuzhengyue_19 分钟前
Linux shell脚本编程
linux·运维·服务器
babytiger1 小时前
在 VMware 中为 Ubuntu 24.04 虚拟机设置共享文件夹后,在虚拟机中未能看到共享的内容
linux·运维·ubuntu
李匠20241 小时前
C++学习之服务器EPOLL模型、处理客户端请求、向客户端回复数、向客户端发送文件
运维·服务器·c++·学习
Wayne_Greet1 小时前
Linux服务器——Samba服务器
linux·运维·服务器
Y淑滢潇潇1 小时前
RHCSA Linux系统 数据流和重定向 tee 命令
linux·运维·云计算
知其_所以然2 小时前
docker安装软件汇总(持续更新)
运维·docker·容器
了不起的杰2 小时前
【Linux操作系统】:信号
linux·运维·服务器
玛奇玛丶2 小时前
crontab定时任务收集日志
运维
limnade3 小时前
将已有 SVN 服务打包成 Docker 镜像的详细步骤
linux·运维·docker